summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Extend the unsupported error to include break and continue, and fix a Eli Friedman2008-12-201-8/+12
| | | | | | warning by using an unsigned index. llvm-svn: 61292
* Make VLAs usable, and make basic usage work correctly. Also, add a Eli Friedman2008-12-203-19/+19
| | | | | | | | | | simple test that actually does VLA codegen. Note that despite the fact that the alloca isn't in the entry block, it should dominate all uses; this is guaranteed by the restrictions on goto into VLA scope in C99. llvm-svn: 61291
* Handle typedefs to VLAs (Emit the size expr when we encounter the typedefAnders Carlsson2008-12-203-18/+24
| | | | llvm-svn: 61290
* Check the entire StackSaveValues stack for VLAs when dealing with goto and ↵Anders Carlsson2008-12-201-6/+10
| | | | | | return statements. Noticed by Eli Friedman. llvm-svn: 61289
* Make sure to generate code for arguments that have a variably modified type.Anders Carlsson2008-12-201-0/+10
| | | | llvm-svn: 61288
* Add case for the new AST node.Fariborz Jahanian2008-12-201-1/+8
| | | | llvm-svn: 61287
* introducing ParmVarWithOriginalTypeDecl class toFariborz Jahanian2008-12-204-1/+75
| | | | | | | keep track of the original parameter decl. types. This is work in progress. llvm-svn: 61286
* Change EmitVLASize to take a QualType that must be a variably modified type.Anders Carlsson2008-12-203-27/+40
| | | | | | | | | | | | Emit the size even if the declared type is a variably modified type. This lets us handle void f(int n) { int (*a)[n]; printf("size: %d\n", sizeof(*a)); } llvm-svn: 61285
* Split up emitting of VLA sizes and getting the size of a VLA.Anders Carlsson2008-12-203-19/+31
| | | | llvm-svn: 61284
* Add some ErrorUnsupported calls and turn on VLA codegen again.Anders Carlsson2008-12-203-12/+23
| | | | llvm-svn: 61283
* Strangely enough, name of ObjC class is not encoded into theFariborz Jahanian2008-12-202-5/+20
| | | | | | | | full encoding of the class which has an ivar of pointer to this class. Its name is encoded in the type for the ivar in the ivar-list metadata. This patch conforms to the above rule. llvm-svn: 61282
* Implement checks for bool in increment and decrement.Sebastian Redl2008-12-205-10/+34
| | | | llvm-svn: 61275
* Lazy bingding for region-store manager.Zhongxing Xu2008-12-2014-456/+372
| | | | | | | | | | | | | * Now Bind() methods take and return GRState* because binding could also alter GDM. * No variables are initialized except those declared with initial values. * failed C test cases are due to bugs in RemoveDeadBindings(), which removes constraints that is still alive. This will be fixed in later patch. * default value of array and struct regions will be implemented in later patch. llvm-svn: 61274
* Updated checker build.Ted Kremenek2008-12-201-1/+1
| | | | llvm-svn: 61273
* Fix <rdar://problem/6454568>: BugReporter should correctly handle switch ↵Ted Kremenek2008-12-201-5/+7
| | | | | | statements with no default case. llvm-svn: 61270
* avoid using a typedef that isn't always included from headers.Chris Lattner2008-12-191-1/+1
| | | | llvm-svn: 61269
* More encoding support. This time forFariborz Jahanian2008-12-194-42/+104
| | | | | | @encode of classes and bitfields. llvm-svn: 61268
* Get rid of the old Expr::Evaluate variant.Anders Carlsson2008-12-194-30/+17
| | | | llvm-svn: 61260
* Pass -fblocks to clangAnders Carlsson2008-12-191-0/+1
| | | | llvm-svn: 61258
* Add a missing @end. Why didn't this get diagnosed?Douglas Gregor2008-12-191-0/+1
| | | | llvm-svn: 61256
* Support more implicit conversions for Objective-C types. Addresses ↵Douglas Gregor2008-12-193-10/+128
| | | | | | <rdar://problem/6458293>. llvm-svn: 61255
* Test case for my last @encode patch.Fariborz Jahanian2008-12-191-0/+17
| | | | llvm-svn: 61247
* Allow downcasts of pointers to Objective-C interfaces, with aDouglas Gregor2008-12-198-16/+64
| | | | | | | warning. This matches GCC's behavior and addresses <rdar://problem/6458293>. llvm-svn: 61246
* Fix for PR3234Anders Carlsson2008-12-193-0/+30
| | | | llvm-svn: 61245
* Updated checker build.Ted Kremenek2008-12-191-1/+1
| | | | llvm-svn: 61233
* Several@encode bug fixes for ObjC.Fariborz Jahanian2008-12-191-2/+10
| | | | llvm-svn: 61231
* Update Xcode project.Ted Kremenek2008-12-191-2/+10
| | | | llvm-svn: 61230
* Add some more implicit conversions for Objective-C++Douglas Gregor2008-12-182-0/+32
| | | | llvm-svn: 61229
* Added test case for suppressing leak warnings for reference-counted objects ↵Ted Kremenek2008-12-181-0/+9
| | | | | | passed by-reference to an unknown function. llvm-svn: 61227
* Fix regression when invalidating reference-counts for objects ↵Ted Kremenek2008-12-181-8/+9
| | | | | | passed-by-reference to a function/method. llvm-svn: 61224
* Don't define __STDC__ when compiling with -fms-extensionsSteve Naroff2008-12-181-1/+2
| | | | llvm-svn: 61223
* Don't check initializers when there are dependent types or type-dependent ↵Douglas Gregor2008-12-181-0/+3
| | | | | | expressions involved llvm-svn: 61212
* Ultrasimplistic sketch for the parsing of C++ template-ids. This won'tDouglas Gregor2008-12-1813-30/+296
| | | | | | | | become useful or correct until we (1) parse template arguments correctly, (2) have some way to turn template-ids into types, declarators, etc., and (3) have a real representation of templates. llvm-svn: 61208
* Use '&' to test StartOfLine flag.Ted Kremenek2008-12-181-1/+1
| | | | llvm-svn: 61205
* Removed a slot in ObjCMemRegExpr used inFariborz Jahanian2008-12-187-17/+40
| | | | | | code gen which did not belong there. llvm-svn: 61203
* Fix http://llvm.org/bugs/show_bug.cgi?id=3189.Steve Naroff2008-12-182-2/+52
| | | | llvm-svn: 61202
* add a simple fast-path for the common case of [] and [4] in Chris Lattner2008-12-181-1/+32
| | | | | | | | array size declarators. No need to go through all the trouble of parsing crazy things like [static const 4] when most code doesn't need it. llvm-svn: 61200
* rename argumentChris Lattner2008-12-181-1/+1
| | | | llvm-svn: 61199
* disallow attributes in a few callers of ParseTypeQualifierListOpt,Chris Lattner2008-12-182-14/+17
| | | | | | | these completely ignore parsed attributes anyway, so don't try to read them. llvm-svn: 61198
* Clean up the C89/C++ warnings about C99 array features to not Chris Lattner2008-12-184-18/+20
| | | | | | | | emit duplicate diags (some in parser and some in sema) and to warn about use of typequals in array sizes. This implements PR2759. llvm-svn: 61197
* Add method used by ImmutableMap GDM specialization.Zhongxing Xu2008-12-181-1/+5
| | | | llvm-svn: 61193
* Allow ABI to use StructRet even for scalar values.Daniel Dunbar2008-12-181-9/+17
| | | | | | | | | | - Update comment to reflect fact that StructRet is now supported for any type (modulo LLVM support). - No functionality change, no scalar types currently use this feature. llvm-svn: 61192
* This is valid in C++.Chris Lattner2008-12-182-4/+13
| | | | | | void foo() { return foo(); } llvm-svn: 61188
* Merge function-return.c into function.cChris Lattner2008-12-186-20/+20
| | | | | | | Fix PR2790 by making a warning an EXTWARN instead of EXTENSION. Add a new EXTENSION warning for "return (some void expression);" llvm-svn: 61187
* implement PR3177 - "__extension__ union" not supported in C++ modeChris Lattner2008-12-182-0/+19
| | | | llvm-svn: 61180
* Updated checker build.Ted Kremenek2008-12-171-1/+1
| | | | llvm-svn: 61173
* Rewrite PTHLexer::DiscardToEndOfLine() to not use GetToken and instead only ↵Ted Kremenek2008-12-171-9/+18
| | | | | | read the bytes needed to determine if a token is not at the start of the line. llvm-svn: 61172
* fix leakage of var's initializersNuno Lopes2008-12-172-10/+27
| | | | llvm-svn: 61171
* Change PTHLexer::getSourceLocation() to not call GetToken() and instead just ↵Ted Kremenek2008-12-172-2/+17
| | | | | | read the file offset in the token data buffer directly. llvm-svn: 61170
* PTHLexer::isNextPPTokenLParen() no longer calls GetToken() and just reads ↵Ted Kremenek2008-12-171-2/+7
| | | | | | the token kind from the token data buffer. This results in a minor speedup and reduces the dependency on GetToken(). llvm-svn: 61168
OpenPOWER on IntegriCloud