Duncan Sands
f610b5b622
Straighten out target triples provided on the command line
...
before using them.
llvm-svn: 112468
2010-08-30 09:42:39 +00:00
Alexis Hunt
e3675ef0f3
Two minor fixes to user-defined literals:
...
- Zero-initialize UDLData so that crashes stop
- Stop complaining that we can't emit them (we most certainly can)
llvm-svn: 112467
2010-08-30 09:27:16 +00:00
Chandler Carruth
9ed87ba797
Add some braces for sanity and GCC silence. These became unbalanced in r112122,
...
so please review echristo and let me know if the logic is wrong now.
llvm-svn: 112466
2010-08-30 07:36:24 +00:00
Alexis Hunt
8591e9e06f
Fix some test-breaking that snuck into my previous commit
...
llvm-svn: 112460
2010-08-29 22:39:32 +00:00
Alexis Hunt
79eb5469e0
Implement C++0x user-defined string literals.
...
The extra data stored on user-defined literal Tokens is stored in extra
allocated memory, which is managed by the PreprocessorLexer because there isn't
a better place to put it that makes sure it gets deallocated, but only after
it's used up. My testing has shown no significant slowdown as a result, but
independent testing would be appreciated.
llvm-svn: 112458
2010-08-29 21:26:48 +00:00
Douglas Gregor
981a0c4613
When providing a code completion for an Objective-C message send, drop
...
the parameter names from the completions, e.g., provide
withString:(NSString *)
instead of
withString:(NSString *)string
since the parameter name is, by convention, redundant with the
selector piece that precedes it and the completions can get
unnecessarily long.
llvm-svn: 112456
2010-08-29 19:47:46 +00:00
Douglas Gregor
99129efdd3
Improve code completion for initializer lists in constructors. Instead
...
of prioritizing just by initialization order, we bump the priority of
just the *next* initializer in the list, and leave everything else at
the normal priority. That way, if one intentionally skips the
initialization of a base or member (to get default initialization),
we'll still get ordered completion for the rest.
llvm-svn: 112454
2010-08-29 19:27:27 +00:00
Douglas Gregor
fdce48b0ca
Add missing test case for constructor-initializer code completions
...
llvm-svn: 112453
2010-08-29 19:20:21 +00:00
Fariborz Jahanian
161848a030
ObjClang++: Allow declaration of block variable in a collection
...
statement header (fixes radar 8295106).
llvm-svn: 112443
2010-08-29 17:20:53 +00:00
Zhongxing Xu
b0a6de9e8f
Add comments.
...
llvm-svn: 112414
2010-08-29 05:16:31 +00:00
Bob Wilson
0e7a398936
Translate NEON vaddl, vaddw, vsubl, and vsubw builtins to llvm add/sub
...
with zext/sext operations, instead of to llvm intrinsics. (We can also
get rid of the clang builtins and handle these entirely in the arm_neon.h
header if there is a way to express vector sext/zext in C.)
llvm-svn: 112413
2010-08-29 05:14:28 +00:00
John McCall
49039d4afb
Complain if a __pragma isn't terminated.
...
llvm-svn: 112392
2010-08-29 01:09:54 +00:00
John McCall
89e925d78e
Add support for Microsoft's __pragma in the preprocessor.
...
Patch by Francois Pichet!
llvm-svn: 112391
2010-08-28 22:34:47 +00:00
John McCall
0856906b1e
When perform exact-qualifier-match template argument deduction,
...
properly account for the possibility that certain opaque types
might be more qualified than they appear. Fixes PR7708.
llvm-svn: 112390
2010-08-28 22:14:41 +00:00
John McCall
fb3f9ba969
If filtering a lookup result leaves it ambiguous, keep the ambiguity
...
kind. Fixes PR7252.
llvm-svn: 112383
2010-08-28 20:17:00 +00:00
Ted Kremenek
52ac860d9c
Delete the relaxedLiveness object in the dtor of AnalysisContext.
...
llvm-svn: 112380
2010-08-28 18:59:04 +00:00
Chris Lattner
0e7c68da96
improve comment, patch by Vladimir Kirillov!
...
llvm-svn: 112374
2010-08-28 16:26:18 +00:00
Gabor Greif
ae849e4407
simplify by relying on cascading operator->
...
llvm-svn: 112373
2010-08-28 15:46:56 +00:00
Gabor Greif
122f1eb2b8
simplify
...
llvm-svn: 112372
2010-08-28 15:42:30 +00:00
Nick Lewycky
4a9da315d3
Fix copy+paste error in comment.
...
llvm-svn: 112370
2010-08-28 13:52:51 +00:00
Gabor Greif
b0c557be1e
add another test for PR8007
...
this is still failing, need to come up with a fix
(but we are in good company as the first gcc version
pass this test will be v4.6)
llvm-svn: 112369
2010-08-28 12:12:45 +00:00
Gabor Greif
156315b7d8
the target of the link uses the singular form, so do we too
...
llvm-svn: 112367
2010-08-28 11:05:27 +00:00
Gabor Greif
e27ea5c92e
typo
...
llvm-svn: 112366
2010-08-28 11:03:06 +00:00
Gabor Greif
e6523ea915
suppress annoying textual repetition as 'aka'
...
llvm-svn: 112365
2010-08-28 10:40:52 +00:00
Argyrios Kyrtzidis
43b205796f
Fix the memory leak of FloatingLiteral/IntegerLiteral.
...
For large floats/integers, APFloat/APInt will allocate memory from the heap to represent these numbers.
Unfortunately, when we use a BumpPtrAllocator to allocate IntegerLiteral/FloatingLiteral nodes the memory associated with
the APFloat/APInt values will never get freed.
I introduce the class 'APNumericStorage' which uses ASTContext's allocator for memory allocation and is used internally by FloatingLiteral/IntegerLiteral.
Fixes rdar://7637185
llvm-svn: 112361
2010-08-28 09:06:06 +00:00
John McCall
1177ff1740
That's not the right direction to compute notional accessibility in at all.
...
llvm-svn: 112360
2010-08-28 08:47:21 +00:00
John McCall
c6af8f4689
Fix build. Bad me, adding last-minute assertions.
...
llvm-svn: 112359
2010-08-28 08:10:32 +00:00
John McCall
96329678e4
When checking access control for an instance member access on
...
an object of type I, if the current access target is protected
when named in a class N, consider the friends of the classes P
where I <= P <= N and where a notional member of N would be
non-forbidden in P.
llvm-svn: 112358
2010-08-28 07:56:00 +00:00
Gabor Greif
468aa3b20c
check whether sema issues a redefinition error
...
llvm-svn: 112347
2010-08-28 02:00:22 +00:00
Gabor Greif
34ecff269e
perform cheap test first
...
llvm-svn: 112346
2010-08-28 01:58:12 +00:00
Nick Lewycky
02d13d1356
Ignore this flag too, Clang doesn't seem to use random numbers internally.
...
llvm-svn: 112342
2010-08-28 01:01:21 +00:00
Gabor Greif
73ddbc51ab
note to self: save before committing; add PR
...
llvm-svn: 112339
2010-08-28 00:48:36 +00:00
Gabor Greif
1d28820888
fix test by applying it in top namespace: PR8007 only showed up this way
...
llvm-svn: 112338
2010-08-28 00:45:56 +00:00
Ted Kremenek
d7478d6010
Update test case, with comment to later investigate the correct behavior. Now the behavior is at least consistent.
...
llvm-svn: 112335
2010-08-28 00:19:12 +00:00
Ted Kremenek
82bfc86792
Explicitly handle CXXExprWithTemporaries during CFG construction by just visiting the subexpression. While we don't do anything intelligent right now, this obviates a bogus -Wunreahable-code warning reported in PR 6130.
...
llvm-svn: 112334
2010-08-28 00:19:02 +00:00
Gabor Greif
b6aba3ef28
fix PR8007
...
reordering and redefinition issues still may linger,
I plan to nail them next
llvm-svn: 112333
2010-08-28 00:16:06 +00:00
Douglas Gregor
eaeeca9afe
Basic code completion support for the base and member initializers in
...
a constructor.
llvm-svn: 112330
2010-08-28 00:00:50 +00:00
Gabor Greif
a56984c72f
reproduction recipe for PR8007, expected to fail for now, review welcome
...
llvm-svn: 112326
2010-08-27 23:39:49 +00:00
Sebastian Redl
6766794c0b
Parser support for inline namespaces
...
llvm-svn: 112320
2010-08-27 23:12:46 +00:00
Sebastian Redl
5bfe034ecc
Comment and move another ASTReader member.
...
llvm-svn: 112319
2010-08-27 23:12:39 +00:00
Sebastian Redl
cc6458890d
Update comment after Chandler's change.
...
llvm-svn: 112318
2010-08-27 23:12:36 +00:00
Douglas Gregor
fcee9460c6
Miscellaneous found by inspection with John and Sebastian
...
llvm-svn: 112315
2010-08-27 22:55:10 +00:00
Tom Care
71cc9d886a
Added checking of (x == x) and (x != x) to IdempotentOperationChecker and updated test cases flagged by it.
...
llvm-svn: 112313
2010-08-27 22:50:47 +00:00
Tom Care
98e679508d
Enabled relaxed LiveVariables analysis in the path-sensitive engine to increase the coverage of bugs. Primarily affects IdempotentOperationChecker.
...
- Migrated a temporarily separated test back to its original file (bug has been fixed, null-deref-ps-temp.c -> null-deref-ps.c)
- Changed SymbolManager to use relaxed LiveVariables
- Updated several test cases that the IdempotentOperationChecker class now flags
- Added test case to test relaxed LiveVariables use by the IdempotentOperationChecker
llvm-svn: 112312
2010-08-27 22:46:32 +00:00
Tom Care
f7b7067c4d
Remove an assertion in UnreachableCodeChecker that can be triggered by bugs in other checkers.
...
llvm-svn: 112310
2010-08-27 22:37:31 +00:00
Tom Care
c29c91aaaa
Fix bug in IdempotentOperationChecker where an assumption would not get updated properly.
...
llvm-svn: 112309
2010-08-27 22:35:28 +00:00
Chris Lattner
1ba644575d
handle :: in selectors in objc++ mode, rdar://8366474
...
llvm-svn: 112307
2010-08-27 22:32:41 +00:00
Tom Care
e5aa30c722
Add alternate version of LiveVariables analysis that does not kill liveness at assignments. This 'relaxed' liveness is useful in path sensitive analysis for situations where the resulting extended liveness allows us to find some bugs.
...
- Added killAtAssign flag to LiveVariables
- Added relaxed LiveVariables to AnalysisContext with an accessor
llvm-svn: 112306
2010-08-27 22:30:10 +00:00
Ted Kremenek
378e93c210
Add source file I meant to include in my previous commit.
...
llvm-svn: 112303
2010-08-27 21:57:20 +00:00
Douglas Gregor
7bddb3cac3
Improve wording of diagnostic complaining about a non-void* pointer as the first parameter of operator delete
...
llvm-svn: 112298
2010-08-27 21:39:15 +00:00