]>
granicus.if.org Git - clang/log
Zhongxing Xu [Fri, 28 Nov 2008 08:34:30 +0000 (08:34 +0000)]
Code cleanup. No functional change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60206
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 28 Nov 2008 03:55:52 +0000 (03:55 +0000)]
Use std::make_pair instead of std::pair's ctor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60205
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Fri, 28 Nov 2008 03:07:05 +0000 (03:07 +0000)]
Enable the GRStateManager to do something when we finish a path. For example,
the ConstraintManager can print its internal state before its solver instance is
destroyed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60204
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 27 Nov 2008 19:33:39 +0000 (19:33 +0000)]
remove dead diag
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60181
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Thu, 27 Nov 2008 07:28:14 +0000 (07:28 +0000)]
Fix order of evaluation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60160
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 27 Nov 2008 06:32:54 +0000 (06:32 +0000)]
ImmutableList::getInternalPointer() returns a const ImmutableListImpl<T>* pointer, which must be converted to void* explicitly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60152
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 27 Nov 2008 06:08:40 +0000 (06:08 +0000)]
Factory objects should not be temporary. It caches all objects in the set.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60151
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 27 Nov 2008 06:03:03 +0000 (06:03 +0000)]
RegionViewMap factory is actually not used. All GDMs should use factories from
GDMContext.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60150
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 27 Nov 2008 03:47:29 +0000 (03:47 +0000)]
Test commit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60147
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 27 Nov 2008 02:39:34 +0000 (02:39 +0000)]
Add comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60146
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 27 Nov 2008 02:19:10 +0000 (02:19 +0000)]
Add license comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60144
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Thu, 27 Nov 2008 01:55:08 +0000 (01:55 +0000)]
Add support for pluggable components of static analyzer.
- Creator function pointers are saved in ManagerRegistry.
- The Register* class is used to notify ManagerRegistry new module is
available.
- AnalysisManager queries ManagerRegistry for configurable module. Then it
passes them to GRExprEngine, in turn to GRStateManager.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60143
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 27 Nov 2008 01:19:21 +0000 (01:19 +0000)]
Add implicit conversions for Objective-C qualified ids, e.g.,
id<P0>
The intended overloading behavior of these entities isn't entirely
clear, and GCC seems to have some strange limitations (e.g., the
inability to overload on id<P0> vs. id<P1>). We'll want to revisit
these semantics and determine just how Objective-C++ overloading
should really work.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60142
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 27 Nov 2008 00:52:49 +0000 (00:52 +0000)]
Cleanup formatting
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60140
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 27 Nov 2008 00:44:28 +0000 (00:44 +0000)]
Don't complain about block pointer to void* conversions
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60138
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 27 Nov 2008 00:38:24 +0000 (00:38 +0000)]
PTHLexer now owns the Token vector.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60136
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 27 Nov 2008 00:15:41 +0000 (00:15 +0000)]
Support block pointer conversions in C++. I'm storing the test case locally until we can enable blocks in C++
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60133
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 26 Nov 2008 23:58:26 +0000 (23:58 +0000)]
- Enhance PTH generation to write out IdentifierInfo table in two parts:
- a table including the IdentifierInfo data
- an index from persistent IdentifierInfo IDs to indices within this file.
- Enhance PTH generation to write out file map information, mapping inodes to tokens.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60132
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 26 Nov 2008 23:33:36 +0000 (23:33 +0000)]
Test conversion from apointer to incomplete type to void* in C++
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60131
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 26 Nov 2008 23:31:11 +0000 (23:31 +0000)]
Implement implicit conversions for Objective-C specific types, e.g.,
converting a pointer to one Objective-C interface into a pointer to another
Objective-C interface, and conversions with 'id'. The semantics seems
to match GCC, although they seem somewhat ad hoc.
Fixed a few cases where we assumed the C++ definition of isObjectType,
but were getting the C definition, causing failures in trouble with
conversions to void pointers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60130
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 26 Nov 2008 23:20:29 +0000 (23:20 +0000)]
Another test for property code gen.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60128
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Wed, 26 Nov 2008 22:40:03 +0000 (22:40 +0000)]
Attempt to unravel the if/else mess in Parser::ParseDirectDeclarator.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60124
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 26 Nov 2008 22:36:09 +0000 (22:36 +0000)]
Code gen for aggregate-valued properties and a test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60122
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Wed, 26 Nov 2008 21:51:07 +0000 (21:51 +0000)]
Add some comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60119
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Wed, 26 Nov 2008 21:41:52 +0000 (21:41 +0000)]
Implement some suggestions by Daniel:
-Change Parser::ParseCXXScopeSpecifier to MaybeParseCXXScopeSpecifier
-Remove Parser::isTokenCXXScopeSpecifier and fold it into MaybeParseCXXScopeSpecifier
-Rename Parser::TryAnnotateScopeToken to TryAnnotateCXXScopeToken and only allow it to be called when in C++
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60117
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Wed, 26 Nov 2008 20:39:45 +0000 (20:39 +0000)]
Add an overload for operator<<(const DiagnosticBuilder &DB,bool I).
Fixes building error on MSVC where passing bool couldn't resolve to one of the overloads.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60116
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 26 Nov 2008 20:33:54 +0000 (20:33 +0000)]
Removed a FIXME. Added a test case for anonymous category.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60115
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 26 Nov 2008 20:01:34 +0000 (20:01 +0000)]
Set default property attributes on each property.
Implemented anonymous category (also know as continuation class)
used to override main class's property attribute. This is work in
propgress.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60114
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Wed, 26 Nov 2008 17:40:42 +0000 (17:40 +0000)]
Convert incomplete array types before emitting debug info for them, fixes PR3134.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60109
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Wed, 26 Nov 2008 15:50:12 +0000 (15:50 +0000)]
add missing RUN lines
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60107
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 26 Nov 2008 06:43:45 +0000 (06:43 +0000)]
Fix a minor typo in the handling of the conditional operator for Objective-C interface pointers
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60096
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 26 Nov 2008 06:01:48 +0000 (06:01 +0000)]
Tweak the new ResolveOverloadedCallFn to just return a FunctionDecl. It makes ActOnCallExpr simpler
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60094
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 26 Nov 2008 05:54:23 +0000 (05:54 +0000)]
Move the overloading logic of Sema::ActOnCallExpr to a separate function
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60093
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Wed, 26 Nov 2008 05:23:17 +0000 (05:23 +0000)]
Add plugin loading for clang. This will be used to load alternative constraint manager for static analysis.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60091
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 26 Nov 2008 05:01:52 +0000 (05:01 +0000)]
Disable -loop-index-split for now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60089
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 26 Nov 2008 03:36:26 +0000 (03:36 +0000)]
Re-apply r60071 now that raw_fd_ostream::tell has been committed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60086
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 26 Nov 2008 02:18:33 +0000 (02:18 +0000)]
Revert 60071, depends on uncommitted LLVM changes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60077
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 26 Nov 2008 00:57:55 +0000 (00:57 +0000)]
Migrate token-cache generation logic from dummy harness in PPLexerChange.cpp to CacheTokens.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60071
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 26 Nov 2008 00:57:02 +0000 (00:57 +0000)]
Add setter method PreprocessorLexer::setParsingPreprocessorDirective(). This will be used by the mechanism to generate cached tokens.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60070
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Wed, 26 Nov 2008 00:39:53 +0000 (00:39 +0000)]
remove debug-only assertion in the complex float evaluator as it makes some real apps crash
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60069
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 25 Nov 2008 23:05:24 +0000 (23:05 +0000)]
Only call TryAnnotateScopeToken when parsing C++.
- This improves -parse-noop of Carbon.h by +2%, and I believe
compensates for the majority of the performance regression in r58913.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60063
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 25 Nov 2008 22:21:48 +0000 (22:21 +0000)]
Handle returning complex types that get coerced. Fixes PR3131
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60058
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Tue, 25 Nov 2008 22:21:31 +0000 (22:21 +0000)]
Use RAII objects to ensure proper destruction of expression and statement AST nodes in the parser in most cases, even on error.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60057
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 25 Nov 2008 21:53:21 +0000 (21:53 +0000)]
Fix 80-col violations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60051
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 25 Nov 2008 21:48:26 +0000 (21:48 +0000)]
Refactored checking on readonly property into a method.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60050
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 25 Nov 2008 17:56:43 +0000 (17:56 +0000)]
Patch to allow over-riding of readonly property to
a writable property in one of its category.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60035
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 25 Nov 2008 17:16:39 +0000 (17:16 +0000)]
Remove more #ifdeffed code
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60033
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Tue, 25 Nov 2008 17:10:10 +0000 (17:10 +0000)]
Remove the #ifdeffed out code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60032
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Tue, 25 Nov 2008 15:46:06 +0000 (15:46 +0000)]
add note about running the test suite with valgrind
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60029
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Tue, 25 Nov 2008 12:23:46 +0000 (12:23 +0000)]
remove unused var
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60018
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 25 Nov 2008 04:08:05 +0000 (04:08 +0000)]
Test another error message, make sure to verify C++ new and delete tests
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60007
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 25 Nov 2008 03:22:00 +0000 (03:22 +0000)]
Simple parsing of exception specifications, with no semantic analysis yet
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60005
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Tue, 25 Nov 2008 01:45:11 +0000 (01:45 +0000)]
Add documentation for test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60002
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 25 Nov 2008 00:20:22 +0000 (00:20 +0000)]
Comment fix.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59997
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 23:45:56 +0000 (23:45 +0000)]
Add no-warning to test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59995
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Mon, 24 Nov 2008 22:16:00 +0000 (22:16 +0000)]
Patch to remove bogus waring when a property declaration
is imported from a protocol into the implementation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59988
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Mon, 24 Nov 2008 21:45:59 +0000 (21:45 +0000)]
Remove an empty if and add a reminder for when we implement C++ try-catch.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59987
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 24 Nov 2008 20:53:32 +0000 (20:53 +0000)]
Display the function we are analyzing before running LiveVariables.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59983
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 24 Nov 2008 20:50:24 +0000 (20:50 +0000)]
Fix CFG bug where the 'increment' block for a 'for' statement would not be
properly reversed once constructed.
This fixes PR 3125:
http://llvm.org/bugs/show_bug.cgi?id=3125
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59982
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Mon, 24 Nov 2008 20:06:50 +0000 (20:06 +0000)]
Remove some bad characters from comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59979
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Mon, 24 Nov 2008 19:39:40 +0000 (19:39 +0000)]
Fix the fix of revision 59974. Now array-struct.c passes too.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59975
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Mon, 24 Nov 2008 19:35:33 +0000 (19:35 +0000)]
Fix crash of array bounds checking under 64-bit.
There might be other, similar bugs lurking there.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59974
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 24 Nov 2008 19:27:06 +0000 (19:27 +0000)]
Remove FIXME comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59973
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 09:44:56 +0000 (09:44 +0000)]
Add support for AllocaRegion extent with GDM.
One design problem that is emerging is the signed-ness problem during static
analysis. Many unsigned value have to be converted into signed value because
it partipates in operations with signed values.
On the other hand, we cannot blindly make all values occuring in static analysis
signed, because we do have cases where unsignedness is required, for example,
integer overflow detection.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59957
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 09:38:21 +0000 (09:38 +0000)]
Add utility methods.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59956
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 07:38:01 +0000 (07:38 +0000)]
Fix 80-col violation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59954
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 07:02:06 +0000 (07:02 +0000)]
Cleanup code with utility method.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59951
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Nov 2008 06:25:27 +0000 (06:25 +0000)]
Change a whole lot of diagnostics to take QualType's directly
instead of converting them to strings first. This also fixes a
bunch of minor inconsistencies in the diagnostics emitted by clang
and adds a bunch of FIXME's to DiagnosticKinds.def.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59948
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Nov 2008 05:29:24 +0000 (05:29 +0000)]
Rename NamedDecl::getName() to getNameAsString(). Replace a bunch of
uses of getName() with uses of getDeclName(). This upgrades a bunch of
diags to take DeclNames instead of std::strings.
This also tweaks a couple of diagnostics to be cleaner and changes
CheckInitializerTypes/PerformInitializationByConstructor to pass
around DeclarationNames instead of std::strings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59947
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Nov 2008 05:23:59 +0000 (05:23 +0000)]
Reimplement Expr::isConstantExpr in terms of Expr::Evaluate. This fixes PR2832.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59946
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Nov 2008 05:23:12 +0000 (05:23 +0000)]
__builtin_constant_p takes an argument that can have any type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59944
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 05:16:01 +0000 (05:16 +0000)]
Strings are NULL terminated. So the region size should plus one.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59943
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Nov 2008 05:13:45 +0000 (05:13 +0000)]
Forgot the newline :)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59942
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Nov 2008 05:11:21 +0000 (05:11 +0000)]
Add test case for bug that's been fixed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59941
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Nov 2008 04:41:22 +0000 (04:41 +0000)]
The address of a variable is only constant if the variable has global storage.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59939
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Mon, 24 Nov 2008 04:21:33 +0000 (04:21 +0000)]
Fix bug in the constant evaluator. Fixes PR3115.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59938
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Nov 2008 04:00:27 +0000 (04:00 +0000)]
Migrate some stuff from NamedDecl::getName() to
NamedDecl::getNameAsString() to make it more explicit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59937
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Nov 2008 03:54:41 +0000 (03:54 +0000)]
Rename NamedDecl::getIdentifierName() to ::getNameAsCString() and make it
assert if the name is not an identifier. Update callers to do the right
thing and avoid this method in unsafe cases. This also fixes an objc
warning that was missing a space, and migrates a couple more to taking
IdentifierInfo and QualTypes instead of std::strings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59936
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Nov 2008 03:52:59 +0000 (03:52 +0000)]
simplify this code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59935
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Nov 2008 03:33:13 +0000 (03:33 +0000)]
Rename Selector::getName() to Selector::getAsString(), and add
a new NamedDecl::getAsString() method.
Change uses of Selector::getName() to just pass in a Selector
where possible (e.g. to diagnostics) instead of going through
an std::string.
This also adds new formatters for objcinstance and objcclass
as described in the dox.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59933
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 02:30:48 +0000 (02:30 +0000)]
Add a comment about the signedness.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59932
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 02:19:49 +0000 (02:19 +0000)]
Add test case for out-of-bound memory access checking.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59931
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 24 Nov 2008 02:18:56 +0000 (02:18 +0000)]
Add getSize() support for StringRegion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59930
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 Nov 2008 01:28:17 +0000 (01:28 +0000)]
Rewrite FindDiagnostics to be more strict about the formatting of the
expected-foo strings. Now the only allowed characters between
expected-error and {{ is whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59925
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 23:38:26 +0000 (23:38 +0000)]
clean up -verify mode output. If the expected-error string is
mangled, report it using the diagnostics machinery instead of printf.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59924
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 23:26:13 +0000 (23:26 +0000)]
convert some more warnings to NOTEs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59923
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 23:20:13 +0000 (23:20 +0000)]
remove warn_previous_declaration
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59922
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 23:17:07 +0000 (23:17 +0000)]
make the 'to match this' diagnostic a note.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59921
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 23:12:31 +0000 (23:12 +0000)]
Make all the 'redefinition' diagnostics more consistent, and make the
"previously defined here" diagnostics all notes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59920
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 22:46:27 +0000 (22:46 +0000)]
make some objc redefinition warnings more consistent: call definitions
"definitions", not declarations. Point out the location of the
original definition.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59919
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 22:38:38 +0000 (22:38 +0000)]
Tweak duplicate category diagnostic to work like the duplicate protocol diagnostic.
Also, point out where the previous decl was. This unxfails two tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59918
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 21:45:46 +0000 (21:45 +0000)]
Convert IdentifierInfo's to be printed the same as DeclarationNames
with implicit quotes around them. This has a bunch of follow-on
effects and requires tweaking to a whole lot of code. This causes
a regression in two tests (xfailed) by causing it to emit things like:
Line 10: duplicate interface declaration for category 'MyClass1' ('Category1')
instead of:
Line 10: duplicate interface declaration for category 'MyClass1(Category1)'
I will fix this in a follow-up commit.
As part of this, I had to start switching stuff to use ->getDeclName() instead
of Decl::getName() for consistency. This is good, but I was planning to do this
as an independent patch. There will be several follow-on patches
to clean up some of the mess, but this patch is already too big.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59917
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 20:28:15 +0000 (20:28 +0000)]
add support for inserting a DeclarationName into a diagnostic directly
without calling getAsString(). This implicitly puts quotes around the
name, so diagnostics need to be tweaked to accommodate this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59916
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 20:27:13 +0000 (20:27 +0000)]
inserting a qualtype adds quotes implicitly
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59915
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 09:21:17 +0000 (09:21 +0000)]
Genericize the qualtype formating callback to support any diag argument.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59908
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 09:13:29 +0000 (09:13 +0000)]
Add support for sending QualType's directly into diags and convert two
diags over to use this. QualTypes implicitly print single quotes around
them for uniformity and future extension.
Doing this requires a little function pointer dance to prevent libbasic
from depending on libast.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59907
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 08:32:53 +0000 (08:32 +0000)]
other minor edits.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59906
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 Nov 2008 08:16:56 +0000 (08:16 +0000)]
minor cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59905
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Sun, 23 Nov 2008 05:52:28 +0000 (05:52 +0000)]
Add out-of-bound memory access warning report code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59903
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Sun, 23 Nov 2008 05:50:21 +0000 (05:50 +0000)]
Improve test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59902
91177308 -0d34-0410-b5e6-
96231b3b80d8