]> granicus.if.org Git - clang/log
clang
14 years agoWhen providing a code completion for an Objective-C message send, drop
Douglas Gregor [Sun, 29 Aug 2010 19:47:46 +0000 (19:47 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112456 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove code completion for initializer lists in constructors. Instead
Douglas Gregor [Sun, 29 Aug 2010 19:27:27 +0000 (19:27 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112454 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd missing test case for constructor-initializer code completions
Douglas Gregor [Sun, 29 Aug 2010 19:20:21 +0000 (19:20 +0000)]
Add missing test case for constructor-initializer code completions

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112453 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoObjClang++: Allow declaration of block variable in a collection
Fariborz Jahanian [Sun, 29 Aug 2010 17:20:53 +0000 (17:20 +0000)]
ObjClang++: Allow declaration of block variable in a collection
statement header (fixes radar 8295106).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112443 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd comments.
Zhongxing Xu [Sun, 29 Aug 2010 05:16:31 +0000 (05:16 +0000)]
Add comments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112414 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTranslate NEON vaddl, vaddw, vsubl, and vsubw builtins to llvm add/sub
Bob Wilson [Sun, 29 Aug 2010 05:14:28 +0000 (05:14 +0000)]
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.)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112413 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoComplain if a __pragma isn't terminated.
John McCall [Sun, 29 Aug 2010 01:09:54 +0000 (01:09 +0000)]
Complain if a __pragma isn't terminated.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112392 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd support for Microsoft's __pragma in the preprocessor.
John McCall [Sat, 28 Aug 2010 22:34:47 +0000 (22:34 +0000)]
Add support for Microsoft's __pragma in the preprocessor.
Patch by Francois Pichet!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112391 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen perform exact-qualifier-match template argument deduction,
John McCall [Sat, 28 Aug 2010 22:14:41 +0000 (22:14 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112390 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIf filtering a lookup result leaves it ambiguous, keep the ambiguity
John McCall [Sat, 28 Aug 2010 20:17:00 +0000 (20:17 +0000)]
If filtering a lookup result leaves it ambiguous, keep the ambiguity
kind.  Fixes PR7252.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112383 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDelete the relaxedLiveness object in the dtor of AnalysisContext.
Ted Kremenek [Sat, 28 Aug 2010 18:59:04 +0000 (18:59 +0000)]
Delete the relaxedLiveness object in the dtor of AnalysisContext.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112380 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoimprove comment, patch by Vladimir Kirillov!
Chris Lattner [Sat, 28 Aug 2010 16:26:18 +0000 (16:26 +0000)]
improve comment, patch by Vladimir Kirillov!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112374 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agosimplify by relying on cascading operator->
Gabor Greif [Sat, 28 Aug 2010 15:46:56 +0000 (15:46 +0000)]
simplify by relying on cascading operator->

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112373 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agosimplify
Gabor Greif [Sat, 28 Aug 2010 15:42:30 +0000 (15:42 +0000)]
simplify

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112372 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix copy+paste error in comment.
Nick Lewycky [Sat, 28 Aug 2010 13:52:51 +0000 (13:52 +0000)]
Fix copy+paste error in comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112370 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd another test for PR8007
Gabor Greif [Sat, 28 Aug 2010 12:12:45 +0000 (12:12 +0000)]
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)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112369 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agothe target of the link uses the singular form, so do we too
Gabor Greif [Sat, 28 Aug 2010 11:05:27 +0000 (11:05 +0000)]
the target of the link uses the singular form, so do we too

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112367 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotypo
Gabor Greif [Sat, 28 Aug 2010 11:03:06 +0000 (11:03 +0000)]
typo

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112366 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agosuppress annoying textual repetition as 'aka'
Gabor Greif [Sat, 28 Aug 2010 10:40:52 +0000 (10:40 +0000)]
suppress annoying textual repetition as 'aka'

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112365 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix the memory leak of FloatingLiteral/IntegerLiteral.
Argyrios Kyrtzidis [Sat, 28 Aug 2010 09:06:06 +0000 (09:06 +0000)]
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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112361 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoThat's not the right direction to compute notional accessibility in at all.
John McCall [Sat, 28 Aug 2010 08:47:21 +0000 (08:47 +0000)]
That's not the right direction to compute notional accessibility in at all.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112360 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix build. Bad me, adding last-minute assertions.
John McCall [Sat, 28 Aug 2010 08:10:32 +0000 (08:10 +0000)]
Fix build.  Bad me, adding last-minute assertions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112359 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen checking access control for an instance member access on
John McCall [Sat, 28 Aug 2010 07:56:00 +0000 (07:56 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112358 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agocheck whether sema issues a redefinition error
Gabor Greif [Sat, 28 Aug 2010 02:00:22 +0000 (02:00 +0000)]
check whether sema issues a redefinition error

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112347 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoperform cheap test first
Gabor Greif [Sat, 28 Aug 2010 01:58:12 +0000 (01:58 +0000)]
perform cheap test first

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112346 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIgnore this flag too, Clang doesn't seem to use random numbers internally.
Nick Lewycky [Sat, 28 Aug 2010 01:01:21 +0000 (01:01 +0000)]
Ignore this flag too, Clang doesn't seem to use random numbers internally.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112342 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agonote to self: save before committing; add PR
Gabor Greif [Sat, 28 Aug 2010 00:48:36 +0000 (00:48 +0000)]
note to self: save before committing; add PR

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112339 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix test by applying it in top namespace: PR8007 only showed up this way
Gabor Greif [Sat, 28 Aug 2010 00:45:56 +0000 (00:45 +0000)]
fix test by applying it in top namespace: PR8007 only showed up this way

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112338 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate test case, with comment to later investigate the correct behavior. Now the...
Ted Kremenek [Sat, 28 Aug 2010 00:19:12 +0000 (00:19 +0000)]
Update test case, with comment to later investigate the correct behavior.  Now the behavior is at least consistent.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112335 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoExplicitly handle CXXExprWithTemporaries during CFG construction by just visiting...
Ted Kremenek [Sat, 28 Aug 2010 00:19:02 +0000 (00:19 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112334 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix PR8007
Gabor Greif [Sat, 28 Aug 2010 00:16:06 +0000 (00:16 +0000)]
fix PR8007
reordering and redefinition issues still may linger,
I plan to nail them next

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112333 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoBasic code completion support for the base and member initializers in
Douglas Gregor [Sat, 28 Aug 2010 00:00:50 +0000 (00:00 +0000)]
Basic code completion support for the base and member initializers in
a constructor.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112330 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoreproduction recipe for PR8007, expected to fail for now, review welcome
Gabor Greif [Fri, 27 Aug 2010 23:39:49 +0000 (23:39 +0000)]
reproduction recipe for PR8007, expected to fail for now, review welcome

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112326 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoParser support for inline namespaces
Sebastian Redl [Fri, 27 Aug 2010 23:12:46 +0000 (23:12 +0000)]
Parser support for inline namespaces

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112320 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoComment and move another ASTReader member.
Sebastian Redl [Fri, 27 Aug 2010 23:12:39 +0000 (23:12 +0000)]
Comment and move another ASTReader member.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112319 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate comment after Chandler's change.
Sebastian Redl [Fri, 27 Aug 2010 23:12:36 +0000 (23:12 +0000)]
Update comment after Chandler's change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112318 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMiscellaneous found by inspection with John and Sebastian
Douglas Gregor [Fri, 27 Aug 2010 22:55:10 +0000 (22:55 +0000)]
Miscellaneous found by inspection with John and Sebastian

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112315 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdded checking of (x == x) and (x != x) to IdempotentOperationChecker and updated...
Tom Care [Fri, 27 Aug 2010 22:50:47 +0000 (22:50 +0000)]
Added checking of (x == x) and (x != x) to IdempotentOperationChecker and updated test cases flagged by it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112313 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoEnabled relaxed LiveVariables analysis in the path-sensitive engine to increase the...
Tom Care [Fri, 27 Aug 2010 22:46:32 +0000 (22:46 +0000)]
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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112312 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove an assertion in UnreachableCodeChecker that can be triggered by bugs in other...
Tom Care [Fri, 27 Aug 2010 22:37:31 +0000 (22:37 +0000)]
Remove an assertion in UnreachableCodeChecker that can be triggered by bugs in other checkers.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112310 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix bug in IdempotentOperationChecker where an assumption would not get updated properly.
Tom Care [Fri, 27 Aug 2010 22:35:28 +0000 (22:35 +0000)]
Fix bug in IdempotentOperationChecker where an assumption would not get updated properly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112309 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agohandle :: in selectors in objc++ mode, rdar://8366474
Chris Lattner [Fri, 27 Aug 2010 22:32:41 +0000 (22:32 +0000)]
handle :: in selectors in objc++ mode, rdar://8366474

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112307 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd alternate version of LiveVariables analysis that does not kill liveness at assign...
Tom Care [Fri, 27 Aug 2010 22:30:10 +0000 (22:30 +0000)]
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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112306 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd source file I meant to include in my previous commit.
Ted Kremenek [Fri, 27 Aug 2010 21:57:20 +0000 (21:57 +0000)]
Add source file I meant to include in my previous commit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112303 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove wording of diagnostic complaining about a non-void* pointer as the first...
Douglas Gregor [Fri, 27 Aug 2010 21:39:15 +0000 (21:39 +0000)]
Improve wording of diagnostic complaining about a non-void* pointer as the first parameter of operator delete

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112298 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement CXCursor support for walking C++ base specifiers. This includes adding...
Ted Kremenek [Fri, 27 Aug 2010 21:34:58 +0000 (21:34 +0000)]
Implement CXCursor support for walking C++ base specifiers.  This includes adding the API hooks clang_isVirtualBase() and clang_getCXXAccessSpecifier() to query properties of the base specifier.

Implements <rdar://problem/8274883>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112296 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix copy-paste in doxygen comment.
Ted Kremenek [Fri, 27 Aug 2010 21:34:51 +0000 (21:34 +0000)]
Fix copy-paste in doxygen comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112295 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement the "call super" code completion for C++. If the virtual
Douglas Gregor [Fri, 27 Aug 2010 21:18:54 +0000 (21:18 +0000)]
Implement the "call super" code completion for C++. If the virtual
member function you're typing in overrides another virtual function,
this fills in a (qualified!) call to that virtual function to make
such delegation easy.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112294 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTeach clang_codeComplete to always sort its code-completion results
Douglas Gregor [Fri, 27 Aug 2010 21:13:41 +0000 (21:13 +0000)]
Teach clang_codeComplete to always sort its code-completion results

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112292 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix incorrect MM_HINT_ definitions, PR8011
Chris Lattner [Fri, 27 Aug 2010 20:10:06 +0000 (20:10 +0000)]
fix incorrect MM_HINT_ definitions, PR8011

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112283 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoContinue to instantiate sub-statements in a CompoundStmt as long as
John McCall [Fri, 27 Aug 2010 19:56:05 +0000 (19:56 +0000)]
Continue to instantiate sub-statements in a CompoundStmt as long as
we don't see a DeclStmt (failure to instantiate which generally causes
panic).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112282 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDebug info for friends!
Devang Patel [Fri, 27 Aug 2010 17:47:47 +0000 (17:47 +0000)]
Debug info for friends!
Patch originally by Alexander Herz.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112275 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSuggest "const" and "volatile" code completions after a function
Douglas Gregor [Fri, 27 Aug 2010 17:35:51 +0000 (17:35 +0000)]
Suggest "const" and "volatile" code completions after a function
declarator, the very definition of "low-hanging fruit".

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112274 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd the new alignment arguments for NEON load/store intrinsics, based on the
Bob Wilson [Fri, 27 Aug 2010 17:14:29 +0000 (17:14 +0000)]
Add the new alignment arguments for NEON load/store intrinsics, based on the
types of the pointer address expressions used with those intrinsics.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112272 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agocreateMainFileID doesn't need its IncludePos argument, since
Dan Gohman [Fri, 27 Aug 2010 15:44:11 +0000 (15:44 +0000)]
createMainFileID doesn't need its IncludePos argument, since
the main file isn't an included file, and the IncludePos is
always SourceLocation().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112269 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen code-completing inside an Objective-C method, give a slight
Douglas Gregor [Fri, 27 Aug 2010 15:29:55 +0000 (15:29 +0000)]
When code-completing inside an Objective-C method, give a slight
priority boost to methods with the same selector.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112268 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a super-cool code completion for send-to-super. When we're typing
Douglas Gregor [Fri, 27 Aug 2010 15:10:57 +0000 (15:10 +0000)]
Add a super-cool code completion for send-to-super. When we're typing
a message send to "super" from a method that appears to be meant to
override a superclass method (same kind, same selector, same argument
types), provide a "super" completion that fills in the selector along
with forwarding the method's arguments (as placeholders).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112263 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix CMake dependencies, from Fernando Pelliccioni!
Douglas Gregor [Fri, 27 Aug 2010 14:18:05 +0000 (14:18 +0000)]
Fix CMake dependencies, from Fernando Pelliccioni!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112261 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPropagate whether an id-expression is the immediate argument of
John McCall [Fri, 27 Aug 2010 09:08:28 +0000 (09:08 +0000)]
Propagate whether an id-expression is the immediate argument of
an '&' expression from the second caller of ActOnIdExpression.

Teach template argument deduction that an overloaded id-expression
doesn't give a valid type for deduction purposes to a non-static
member function unless the expression has the correct syntactic
form.

Teach ActOnIdExpression that it shouldn't try to create implicit
member expressions for '&function', because this isn't a
permitted form of use for member functions.

Teach CheckAddressOfOperand to diagnose these more carefully.
Some of these cases aren't reachable right now because earlier
diagnostics interrupt them.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112258 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDon't recurse twice when we can recurse once
Douglas Gregor [Fri, 27 Aug 2010 00:11:28 +0000 (00:11 +0000)]
Don't recurse twice when we can recurse once

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112246 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoOne who seeks knowledge learns something new every day.
John McCall [Thu, 26 Aug 2010 23:41:50 +0000 (23:41 +0000)]
One who seeks knowledge learns something new every day.
One who seeks the Tao unlearns something new every day.
Less and less remains until you arrive at non-action.
When you arrive at non-action,
nothing will be left undone.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112244 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotest case for r112238.
Devang Patel [Thu, 26 Aug 2010 22:54:33 +0000 (22:54 +0000)]
test case for r112238.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112239 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix horrible GRExprEngine bug where switch statements with no 'case:' statements...
Ted Kremenek [Thu, 26 Aug 2010 22:19:33 +0000 (22:19 +0000)]
Fix horrible GRExprEngine bug where switch statements with no 'case:' statements would cause the path to get prematurely aborted.  Fixes <rdar://problem/8360854>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112233 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove redundant cast<...>.
Ted Kremenek [Thu, 26 Aug 2010 22:04:01 +0000 (22:04 +0000)]
Remove redundant cast<...>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112229 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a typo.
Dan Gohman [Thu, 26 Aug 2010 21:27:06 +0000 (21:27 +0000)]
Fix a typo.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112219 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoimprove comments.
Chris Lattner [Thu, 26 Aug 2010 20:08:43 +0000 (20:08 +0000)]
improve comments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112214 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd radar #
Chris Lattner [Thu, 26 Aug 2010 20:05:48 +0000 (20:05 +0000)]
add radar #

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112212 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix 2xi16 to pass as i32 instead of <2 x i16>. The former passes in
Chris Lattner [Thu, 26 Aug 2010 20:05:13 +0000 (20:05 +0000)]
fix 2xi16 to pass as i32 instead of <2 x i16>.  The former passes in
memory (as required) the later now passes in an xmm register.  This
fixes gcc.dg/compat/vector_1 on x86-32.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112211 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoclang.xcodeproj updated.
Fariborz Jahanian [Thu, 26 Aug 2010 19:58:26 +0000 (19:58 +0000)]
clang.xcodeproj updated.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112209 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agovector of long and ulong are also classified as INTEGER in x86-64 abi,
Chris Lattner [Thu, 26 Aug 2010 18:13:50 +0000 (18:13 +0000)]
vector of long and ulong are also classified as INTEGER in x86-64 abi,
this fixes rdar://8358475 a failure of the gcc.dg/compat/vector_1 abi
test.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112205 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago1 x ulonglong needs to be classified as INTEGER, just like 1 x longlong,
Chris Lattner [Thu, 26 Aug 2010 18:03:20 +0000 (18:03 +0000)]
1 x ulonglong needs to be classified as INTEGER, just like 1 x longlong,
this fixes a miscompilation on the included testcase, rdar://8359248

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112201 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago...I forgot to check my new test after adding it, and lo, there's slightly different
John McCall [Thu, 26 Aug 2010 17:42:30 +0000 (17:42 +0000)]
...I forgot to check my new test after adding it, and lo, there's slightly different
behavior in C than in C++ (which is what the original test case was).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112199 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake sure we clear TypeSpecOwned when setting TypeSpecType to something when
John McCall [Thu, 26 Aug 2010 17:22:34 +0000 (17:22 +0000)]
Make sure we clear TypeSpecOwned when setting TypeSpecType to something when
it might previously have been a tag TST.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112196 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTweak the @selector completion to collapse multiple informative and
Douglas Gregor [Thu, 26 Aug 2010 16:46:39 +0000 (16:46 +0000)]
Tweak the @selector completion to collapse multiple informative and
typed-text blocks into one of each.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112194 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen code-completing a potential call to a C++ non-static member
Douglas Gregor [Thu, 26 Aug 2010 16:36:48 +0000 (16:36 +0000)]
When code-completing a potential call to a C++ non-static member
function, take into account the qualifiers on the object argument
(e.g., what will become "this"), filtering around uncallable member
functions and giving a slight priority boost to those with
exactly-matching qualifiers.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112193 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWork around a gcc warning.
John McCall [Thu, 26 Aug 2010 16:36:35 +0000 (16:36 +0000)]
Work around a gcc warning.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112192 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix miscompilation. The cookie was not used when new'ing arrays with multiple dimensions.
Argyrios Kyrtzidis [Thu, 26 Aug 2010 15:23:38 +0000 (15:23 +0000)]
Fix miscompilation. The cookie was not used when new'ing arrays with multiple dimensions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112188 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoclang-interpreter: libFrontend depends on libSerialization. Fix linux build by changi...
Benjamin Kramer [Thu, 26 Aug 2010 15:21:38 +0000 (15:21 +0000)]
clang-interpreter: libFrontend depends on libSerialization. Fix linux build by changing the link order.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112187 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement code completion for @selector expressions
Douglas Gregor [Thu, 26 Aug 2010 15:07:07 +0000 (15:07 +0000)]
Implement code completion for @selector expressions

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112186 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore ordering tweaks in this silly, silly test
Douglas Gregor [Thu, 26 Aug 2010 14:20:32 +0000 (14:20 +0000)]
More ordering tweaks in this silly, silly test

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112184 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agomark boost's tracking bug as fixed
Gabor Greif [Thu, 26 Aug 2010 14:20:18 +0000 (14:20 +0000)]
mark boost's tracking bug as fixed

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112183 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTweak wording in an assertion, from dawn@burble.org.
Douglas Gregor [Thu, 26 Aug 2010 14:07:34 +0000 (14:07 +0000)]
Tweak wording in an assertion, from dawn@burble.org.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112182 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate clang-interpreter for recent DiagnosticClient ownership changes.
Benjamin Kramer [Thu, 26 Aug 2010 13:48:56 +0000 (13:48 +0000)]
Update clang-interpreter for recent DiagnosticClient ownership changes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112181 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove the sorting of code-completion results out of the main path and
Douglas Gregor [Thu, 26 Aug 2010 13:48:20 +0000 (13:48 +0000)]
Move the sorting of code-completion results out of the main path and
into the clients, e.g., the printing code-completion consumer and
c-index-test. Clients may want to re-sort the results anyway.

Provide a libclang function that sorts the results.

3rd try. How embarrassing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112180 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMissed a couple.
John McCall [Thu, 26 Aug 2010 10:20:09 +0000 (10:20 +0000)]
Missed a couple.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112179 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoApparently gcc doesn't always get injected class names right.
John McCall [Thu, 26 Aug 2010 09:52:08 +0000 (09:52 +0000)]
Apparently gcc doesn't always get injected class names right.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112178 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove things around so that Sema.h no longer depends on even DeclBase.h.
John McCall [Thu, 26 Aug 2010 09:15:37 +0000 (09:15 +0000)]
Move things around so that Sema.h no longer depends on even DeclBase.h.
It still depends on Type because DeclarationName.h does.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112177 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agotame an assertion, fixing rdar://8357396
Chris Lattner [Thu, 26 Aug 2010 06:28:35 +0000 (06:28 +0000)]
tame an assertion, fixing rdar://8357396

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112174 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCGValue: Increase width of allowed alignment. We could switch to log2, but we
Daniel Dunbar [Thu, 26 Aug 2010 06:02:12 +0000 (06:02 +0000)]
CGValue: Increase width of allowed alignment. We could switch to log2, but we
don't currently need the bits anyway.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112173 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert r112149, "Move the sorting of code-completion results out of the main
Daniel Dunbar [Thu, 26 Aug 2010 03:53:50 +0000 (03:53 +0000)]
Revert r112149, "Move the sorting of code-completion results out of the main
path and ...", it is failing tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112161 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert r112154, "Fix thinko in sorting operation", it depends on r112149 which
Daniel Dunbar [Thu, 26 Aug 2010 03:53:44 +0000 (03:53 +0000)]
Revert r112154, "Fix thinko in sorting operation", it depends on r112149 which
doth lay upon the chopping block.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112160 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTweak test to avoid checking for a specific ordering where none exists
Douglas Gregor [Thu, 26 Aug 2010 03:52:21 +0000 (03:52 +0000)]
Tweak test to avoid checking for a specific ordering where none exists

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112159 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDe-memberify the VarDecl and FunctionDecl StorageClass enums.
John McCall [Thu, 26 Aug 2010 03:08:43 +0000 (03:08 +0000)]
De-memberify the VarDecl and FunctionDecl StorageClass enums.
This lets us remove Sema.h's dependency on Expr.h and Decl.h.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112156 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix thinko in sorting operation
Douglas Gregor [Thu, 26 Aug 2010 02:54:05 +0000 (02:54 +0000)]
Fix thinko in sorting operation

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112154 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a typo.
Dan Gohman [Thu, 26 Aug 2010 02:27:03 +0000 (02:27 +0000)]
Fix a typo.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112151 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove the sorting of code-completion results out of the main path and
Douglas Gregor [Thu, 26 Aug 2010 02:23:45 +0000 (02:23 +0000)]
Move the sorting of code-completion results out of the main path and
into the clients, e.g., the printing code-completion consumer and
c-index-test. Clients may want to re-sort the results anyway.

Provide a libclang function that sorts the results.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112149 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRestore r112114 now that SmallVector<...,0> is safe.
John McCall [Thu, 26 Aug 2010 02:13:20 +0000 (02:13 +0000)]
Restore r112114 now that SmallVector<...,0> is safe.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112148 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove some type defines from smmintrin.h to emmintrin.h to match where
Eric Christopher [Thu, 26 Aug 2010 02:09:25 +0000 (02:09 +0000)]
Move some type defines from smmintrin.h to emmintrin.h to match where
gcc defines them.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112146 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd libclang API hook "clang_getIBOutletCollectionType" to query the collection type...
Ted Kremenek [Thu, 26 Aug 2010 01:42:22 +0000 (01:42 +0000)]
Add libclang API hook "clang_getIBOutletCollectionType" to query the collection type for iboutletcollection attributes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112139 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver/Darwin: Switch back to old toolchain, looks like new one isn't quite
Daniel Dunbar [Thu, 26 Aug 2010 01:41:44 +0000 (01:41 +0000)]
Driver/Darwin: Switch back to old toolchain, looks like new one isn't quite
ready yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112138 91177308-0d34-0410-b5e6-96231b3b80d8