]>
granicus.if.org Git - clang/log
Ted Kremenek [Thu, 9 Sep 2010 00:06:10 +0000 (00:06 +0000)]
Enhance -Wunreachable-code to not consider the 'default:' branch of a switch statement live if a switch on an enum value has
explicit 'case:' statements for each enum value.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113451
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Sep 2010 00:06:07 +0000 (00:06 +0000)]
Enhance -Wreturn-type to not warn when control-flow is most likely limited by a switch statement explicitly covering
all the cases for an enum value.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113450
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Sep 2010 00:06:04 +0000 (00:06 +0000)]
Add 'filtered_pred_iterator' and 'filtered_succ_iterator' to CFGBlock. This allows a client
to selectively walk successors/predecessors based on commonly used filters. For starters, add
a filter to ignore 'default:' cases for SwitchStmts when all enum values are covered by CaseStmts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113449
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Sep 2010 00:06:01 +0000 (00:06 +0000)]
Initialize 'AllEnumCasesCovered' in SwitchStmt's constructor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113448
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 9 Sep 2010 00:05:53 +0000 (00:05 +0000)]
When building SwitchStmts in Sema, record whether all the enum values of a switch(enum) where
covered by individual case statements. Flow-based analyses may wish to consult this information,
and recording this in the AST allows us to obviate reconstructing this information later when
we build the CFG.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113447
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 8 Sep 2010 23:56:00 +0000 (23:56 +0000)]
Push the range associated with a nested-name-specifier further through
TreeTransform, since we were getting an empty source range where we
shouldn't. Sadly, the test case is Boost.Proto, and isn't worth
reducing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113446
91177308 -0d34-0410-b5e6-
96231b3b80d8
Francois Pichet [Wed, 8 Sep 2010 23:47:05 +0000 (23:47 +0000)]
Fix warnings caused by new CXXUuidofExprClass enumerator.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113444
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Sep 2010 23:40:30 +0000 (23:40 +0000)]
Add another missing CMake dependency.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113443
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 8 Sep 2010 23:14:30 +0000 (23:14 +0000)]
Fix a few minor issues with parsing and semantic analysis of C++
typeid expressions:
- make sure we have a proper source location for the closing ')'
- cache the declaration of std::type_info once we've found it
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113441
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dawn Perchik [Wed, 8 Sep 2010 22:56:24 +0000 (22:56 +0000)]
Add support for a few MS extensions supported by the Borland compiler
(__uuidof, _fastcall, etc.).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113434
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 8 Sep 2010 22:47:51 +0000 (22:47 +0000)]
When providing a completion for a function/method parameter of block
pointer type, actually provide a usable block literal expression.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113431
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 8 Sep 2010 22:36:14 +0000 (22:36 +0000)]
Test removed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113428
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Wed, 8 Sep 2010 21:58:42 +0000 (21:58 +0000)]
Decl::CheckAccessDeclContext() keeps asserting. Access is not set in some cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113419
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 8 Sep 2010 21:55:57 +0000 (21:55 +0000)]
Removed test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113418
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 8 Sep 2010 21:40:53 +0000 (21:40 +0000)]
Clean up some of the CMake dependencies
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113416
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 8 Sep 2010 21:40:08 +0000 (21:40 +0000)]
Use the new-initialization code for initializing scalars with a
function-style cast. Previously, we had a (redundant, incorrect)
semantic-checking path for non-class types, which allowed
value-initialization of a reference type and then crashed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113415
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 8 Sep 2010 21:36:35 +0000 (21:36 +0000)]
Reverse r113397 until we decide what to do with
use of 'struct objc_object*' for 'is' (and others)
in clang.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113414
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Wed, 8 Sep 2010 21:32:35 +0000 (21:32 +0000)]
Re-enable CheckAccessDeclContext and make sure it doesn't trigger assertions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113413
91177308 -0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 8 Sep 2010 21:30:16 +0000 (21:30 +0000)]
Initialize the MSVCGuidDecl variable in the correct order.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113412
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 8 Sep 2010 20:08:18 +0000 (20:08 +0000)]
Fix a crash when overloading id with objc_object*.
Radar
8400356 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113397
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Wed, 8 Sep 2010 19:31:22 +0000 (19:31 +0000)]
Fix C++ PCH issues.
PCH got a severe beating by the boost-using test case reported here: http://llvm.org/PR8099
Fix issues like:
-When PCH reading, make sure Decl's getASTContext() doesn't get called since a Decl in the parent hierarchy may be initializing.
-In ASTDeclReader::VisitFunctionDecl VisitRedeclarable should be called before using FunctionDecl's isCanonicalDecl()
-In ASTDeclReader::VisitRedeclarableTemplateDecl CommonOrPrev must be initialized before anything else.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113391
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 8 Sep 2010 18:19:55 +0000 (18:19 +0000)]
Frontend/-H: Add comment on why I used a temporary string here.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113379
91177308 -0d34-0410-b5e6-
96231b3b80d8
Francois Pichet [Wed, 8 Sep 2010 12:20:18 +0000 (12:20 +0000)]
Microsoft's __uuidof operator implementation part 1.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113356
91177308 -0d34-0410-b5e6-
96231b3b80d8
Francois Pichet [Wed, 8 Sep 2010 11:32:25 +0000 (11:32 +0000)]
Allow type definitions inside anonymous struct/union in Microsoft mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113354
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Wed, 8 Sep 2010 04:46:19 +0000 (04:46 +0000)]
Don't give 'global constructor' warnings for function statics, even if they have a direct initializer. Fixes PR8095.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113344
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 8 Sep 2010 02:01:27 +0000 (02:01 +0000)]
Put the tautological-comparison-of-unsigned-against-zero warnings in
-Wtautological-compare instead of -Wsign-compare, which also implies turning
them on by default.
Restoration of r112877.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113334
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 8 Sep 2010 01:44:27 +0000 (01:44 +0000)]
Implement ARM static local initialization guards, which are more compact than
Itanium guards and use a slightly different compiled-in API.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113330
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sebastian Redl [Wed, 8 Sep 2010 00:48:43 +0000 (00:48 +0000)]
Allow (cv) void and incomplete arrays to be passed to the type traits.
Fixes PR8110, and thus PR8109, PR8097, and parts of PR8101, PR8105 and PR8107. Only a few traits have tests for incomplete arrays, since I'm not yet clear what the result for them should be; Howards wants to file a DR to change the standard.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113326
91177308 -0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Wed, 8 Sep 2010 00:31:13 +0000 (00:31 +0000)]
add a fixit when 'main' does ot return 'int'; review welcome
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113324
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 8 Sep 2010 00:15:04 +0000 (00:15 +0000)]
Provide proper type-source location information for
CXXTemporaryObjectExpr, CXXScalarValueInitExpr, and
CXXUnresolvedConstructExpr, getting rid of a bunch of FIXMEs in the
process.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113319
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 7 Sep 2010 23:26:17 +0000 (23:26 +0000)]
Local static block variable referecned in its
block-literal initializer expression causes IRgen to crash.
This patch fixes by saving it in StaticLocalDecl map
already used for such purposes. (radar
8390455 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113307
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Sep 2010 22:54:28 +0000 (22:54 +0000)]
tests: Use -ffreestanding when including stdint.h, to avoid platform dependencies.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113301
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 7 Sep 2010 22:21:59 +0000 (22:21 +0000)]
Fix DeclPrinter to not include '=' in printing when no initializer is provided for a VarDecl. Patch by Jim Goodnow II!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113296
91177308 -0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Tue, 7 Sep 2010 22:17:12 +0000 (22:17 +0000)]
typo
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113295
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Sep 2010 21:49:58 +0000 (21:49 +0000)]
Improve source-location information for CXXNewExpr, by hanging on to
the TypeSourceInfo for the allocated type. Fixes PR7501.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113291
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Tue, 7 Sep 2010 20:45:26 +0000 (20:45 +0000)]
Fix null pointer dereference in StreamChecker::Fseek (reported in PR 8081) and simplify surrounding checking logic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113282
91177308 -0d34-0410-b5e6-
96231b3b80d8
Tom Care [Tue, 7 Sep 2010 20:27:56 +0000 (20:27 +0000)]
Re-enabled truncation/extension checking in IdempotentOperationChecker and added a test case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113269
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Sep 2010 20:16:43 +0000 (20:16 +0000)]
Add function attributes to the output of -ast-print-xml, from Martin Vejnar!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113266
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 7 Sep 2010 19:57:04 +0000 (19:57 +0000)]
get rid of a warning.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113256
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Tue, 7 Sep 2010 19:38:13 +0000 (19:38 +0000)]
Have Sema check for validity of CGString literal
instead of asserting in IRGen. Fixes radar
8390459 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113253
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Tue, 7 Sep 2010 18:40:41 +0000 (18:40 +0000)]
Allow 'o' and 'V' as constraints for output asm operands.
Allow '<' and '>' as constraints for input or output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113246
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Tue, 7 Sep 2010 18:31:03 +0000 (18:31 +0000)]
Improve error recovery when we see ':' and expect a ';'.
I, at least, make this typo all the time.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113243
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Tue, 7 Sep 2010 18:11:53 +0000 (18:11 +0000)]
Adjust a test that's expecting optimizations to be done
on MMX palignr; we don't do this for the intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113234
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Sep 2010 17:50:41 +0000 (17:50 +0000)]
Driver/Darwin: Catch another case where ld ends up using ld_classic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113226
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 7 Sep 2010 17:07:49 +0000 (17:07 +0000)]
Driver/Darwin: Don't pass -demangle to the linker when we know it is going to
use ld_classic. This is a temporary workaround, the linkr itself should handle
this.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113212
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Sep 2010 15:51:01 +0000 (15:51 +0000)]
Provide a specific diagnostic when trying to redefine an "extern
inline" function outside of GNU89 mode. Fixes
<rdar://problem/
6880464 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113204
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Sep 2010 15:23:11 +0000 (15:23 +0000)]
Improve recovery when there is a stray ']' or ')' before the ';' at
the end of a statement. Fixes <rdar://problem/
6896493 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113202
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Sep 2010 14:51:08 +0000 (14:51 +0000)]
Improve recovery when a comma is missing between enumerators in an
enumeration definition. Fixes <rdar://problem/
7159693 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113201
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 7 Sep 2010 14:35:10 +0000 (14:35 +0000)]
Improve diagnostic and recovery when missing a comma between base or
member initializers in a C++ constructor. Fixes <rdar://problem/
7796492 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113199
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Mon, 6 Sep 2010 23:43:28 +0000 (23:43 +0000)]
Replace loops with SmallVector::append.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113185
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 6 Sep 2010 22:09:27 +0000 (22:09 +0000)]
Due to asmparser improvements, this error message is now better
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113177
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Mon, 6 Sep 2010 19:04:27 +0000 (19:04 +0000)]
Fix a C++ PCH problem which was exposed by r113019. CXXBaseOrMemberInitializer's IsWritten and source order is not set.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113161
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 6 Sep 2010 17:52:29 +0000 (17:52 +0000)]
remove curly quotes, patch by Dimitry Andric!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113156
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Mon, 6 Sep 2010 12:00:10 +0000 (12:00 +0000)]
LastFieldBitfield in CGObjCCommonMac::BuildAggrIvarLayout keeps bitfields or unnamed fields but later the code
assumes that it's always a bitfield. This can lead to a crash (reported at rdar://
8368320 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113154
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 6 Sep 2010 07:32:31 +0000 (07:32 +0000)]
FinishBlock() is essentially doing nothing except returning '!badCFG'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113149
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhongxing Xu [Mon, 6 Sep 2010 07:04:06 +0000 (07:04 +0000)]
Simplify CFG construction: bail out early when we have a bad CFG.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113148
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 6 Sep 2010 02:36:23 +0000 (02:36 +0000)]
Make "-ccc-cxx" option work on Linux.
Patch by nobled.
I also took the opportunity to make the field private since now it is only ready from the
outside.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113138
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 6 Sep 2010 00:31:37 +0000 (00:31 +0000)]
Get rid of unnecessary return.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113132
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 6 Sep 2010 00:30:50 +0000 (00:30 +0000)]
Update test for r113128.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113131
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 6 Sep 2010 00:13:11 +0000 (00:13 +0000)]
move the hackaround for PR6537 to catch unions as well,
fixing the ICE in PR7151
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113130
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 6 Sep 2010 00:11:41 +0000 (00:11 +0000)]
clean up some formatting.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113129
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Mon, 6 Sep 2010 00:10:32 +0000 (00:10 +0000)]
PR7242: Make sure to use a different context for evaluating constant
initializers, so the result of the evaluation doesn't leak through
inconsistently. Also, don't evaluate references to variables with
initializers with side-effects.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113128
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 23:29:49 +0000 (23:29 +0000)]
fix PR7192 by defining wchar_t in a more conventional way. The
type of L"x" can change based on command line arguments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113127
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steven Watanabe [Sun, 5 Sep 2010 23:16:22 +0000 (23:16 +0000)]
Tell the VS headers that char16_t and char32_t are keywords, so yvals.h doesn't try to define them as typedefs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113126
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 23:16:09 +0000 (23:16 +0000)]
fix 7320: we can't delete a trailing space if it doesn't exist.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113125
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Sun, 5 Sep 2010 23:15:52 +0000 (23:15 +0000)]
PR8023: Don't crash on invalid uses of __real__ on class types in C++.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113124
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sun, 5 Sep 2010 03:40:33 +0000 (03:40 +0000)]
No functional change. Replace Out << 'a' << 'b' with Out << "ab" and spell
David Vandevoorde's name correctly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113103
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 00:43:21 +0000 (00:43 +0000)]
"const id<NSFoo> *" instead of "id<NSFoo> const *".
I think this wraps up all the legal cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113096
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 00:36:44 +0000 (00:36 +0000)]
"const id<NSFoo> *" not "id<NSFoo> const*"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113095
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 00:27:00 +0000 (00:27 +0000)]
"const std::vector<int>*" not "std::vector<int> const*"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113094
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 00:22:25 +0000 (00:22 +0000)]
"const _Complex float *" not "_Complex float const *"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113093
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 00:17:29 +0000 (00:17 +0000)]
'const std::type_info*' instead of 'std::type_info const*'
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113092
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 00:07:29 +0000 (00:07 +0000)]
print "const intptr_t" instead of "intptr_t const"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113091
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 5 Sep 2010 00:04:01 +0000 (00:04 +0000)]
make clang print types as "const int *" instead of "int const*",
which is should have done from the beginning. As usual, the most
fun with this sort of change is updating all the testcases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113090
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 4 Sep 2010 23:43:40 +0000 (23:43 +0000)]
revert this, it isn't safe.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113088
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 4 Sep 2010 23:37:43 +0000 (23:37 +0000)]
tidy up
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113087
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 4 Sep 2010 23:16:01 +0000 (23:16 +0000)]
revise r112365 to fix the actual problem: the isa<TagType>(Underlying)
check in the "typedef for anonymous type" check should have been a
getAs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113085
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Sat, 4 Sep 2010 19:49:18 +0000 (19:49 +0000)]
Casting of a property reference to 'void' did not
generate the necessary code. This patch fixes it.
// rdar://
8389655
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113079
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 4 Sep 2010 18:19:08 +0000 (18:19 +0000)]
zap more dead code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113076
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 4 Sep 2010 18:12:20 +0000 (18:12 +0000)]
zap dead code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113074
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Sat, 4 Sep 2010 01:26:37 +0000 (01:26 +0000)]
Petty optimization.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113049
91177308 -0d34-0410-b5e6-
96231b3b80d8
Zhanyong Wan [Fri, 3 Sep 2010 23:50:56 +0000 (23:50 +0000)]
fix a crash in RecursiveASTVisitor's child classes (PR8403); reviewed by chandlerc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113038
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 3 Sep 2010 23:30:36 +0000 (23:30 +0000)]
Synchronize code-completion cursor kinds with indexing cursor
kinds. How shameful that this code was duplicated!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113033
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 3 Sep 2010 23:07:53 +0000 (23:07 +0000)]
Truncate block variable of bool type to i1 when its
value is used. This matches with non-block variable
use of bool type. (Fixes radar
8390062 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113027
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Fri, 3 Sep 2010 21:54:20 +0000 (21:54 +0000)]
Fix PR7402 when it strikes via template instantiation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113019
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anders Carlsson [Fri, 3 Sep 2010 21:53:49 +0000 (21:53 +0000)]
It's OK for classes to have flexible array elements (but not unions).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113018
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 3 Sep 2010 21:36:02 +0000 (21:36 +0000)]
Cope with llvm's reference to bool type of 'i1' vs. clang's
type of 'i8' for the same for __block variables of
type bool. refixes radar
8382559 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113015
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Fri, 3 Sep 2010 21:17:53 +0000 (21:17 +0000)]
Clean up some whitespace and comments from this test that were remnants of
a previous iteration of the test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113013
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Fri, 3 Sep 2010 21:12:34 +0000 (21:12 +0000)]
Allow anonymous and local types. The support was already in place for these,
but this makes them work even as an extension in C++98. This resolves PR8077.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113011
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Fri, 3 Sep 2010 18:58:50 +0000 (18:58 +0000)]
A constant initializer never matches the type of the variable it's
initializing; it at best matches the element type of the variable
it's initializing. Fixes PR8073.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112992
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 3 Sep 2010 18:01:25 +0000 (18:01 +0000)]
Implement libclang visitation for UnresolvedMemberExpr. This is the
last of the C++-specific expressions where we have decent source
information in the AST already. In particular, various
object-construction expressions (CXXNewExpr, CXXTemporaryObjectExpr)
still have poor source-location information that needs to be addressed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112981
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Fri, 3 Sep 2010 18:01:10 +0000 (18:01 +0000)]
update svn:ignore
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112980
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 3 Sep 2010 18:01:09 +0000 (18:01 +0000)]
Use std::string instead of llvm::StringRef to avoid dangling ref.
Per Chris's comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112979
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 3 Sep 2010 17:35:34 +0000 (17:35 +0000)]
libclang visitation for CXXDependentScopeMemberExpr
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112978
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 3 Sep 2010 17:33:04 +0000 (17:33 +0000)]
Use getSpelling to get original text of the
c++ operator token. (radar
8328250 ).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112977
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 3 Sep 2010 17:24:10 +0000 (17:24 +0000)]
libclang visitation for DependentScopeDeclRefExpr
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112975
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Fri, 3 Sep 2010 17:16:03 +0000 (17:16 +0000)]
Add missing #include
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112974
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dawn Perchik [Fri, 3 Sep 2010 17:01:13 +0000 (17:01 +0000)]
Put the info on testing from the command line into its own section
titled "Testing on the Command Line".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112972
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 3 Sep 2010 16:47:03 +0000 (16:47 +0000)]
fix a hard coded version number, PR8031. Patch by 'nobled'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112970
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 3 Sep 2010 16:45:53 +0000 (16:45 +0000)]
fix lookup of bits/c++config.h on mingw, patch by Ismail Donmez!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112969
91177308 -0d34-0410-b5e6-
96231b3b80d8