Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Extend the unsupported error to include break and continue, and fix a | Eli Friedman | 2008-12-20 | 1 | -8/+12 |
| | | | | | | warning by using an unsigned index. llvm-svn: 61292 | ||||
* | Make VLAs usable, and make basic usage work correctly. Also, add a | Eli Friedman | 2008-12-20 | 3 | -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 typedef | Anders Carlsson | 2008-12-20 | 3 | -18/+24 |
| | | | | llvm-svn: 61290 | ||||
* | Check the entire StackSaveValues stack for VLAs when dealing with goto and ↵ | Anders Carlsson | 2008-12-20 | 1 | -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 Carlsson | 2008-12-20 | 1 | -0/+10 |
| | | | | llvm-svn: 61288 | ||||
* | Add case for the new AST node. | Fariborz Jahanian | 2008-12-20 | 1 | -1/+8 |
| | | | | llvm-svn: 61287 | ||||
* | introducing ParmVarWithOriginalTypeDecl class to | Fariborz Jahanian | 2008-12-20 | 4 | -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 Carlsson | 2008-12-20 | 3 | -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 Carlsson | 2008-12-20 | 3 | -19/+31 |
| | | | | llvm-svn: 61284 | ||||
* | Add some ErrorUnsupported calls and turn on VLA codegen again. | Anders Carlsson | 2008-12-20 | 3 | -12/+23 |
| | | | | llvm-svn: 61283 | ||||
* | Strangely enough, name of ObjC class is not encoded into the | Fariborz Jahanian | 2008-12-20 | 2 | -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 Redl | 2008-12-20 | 5 | -10/+34 |
| | | | | llvm-svn: 61275 | ||||
* | Lazy bingding for region-store manager. | Zhongxing Xu | 2008-12-20 | 14 | -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 Kremenek | 2008-12-20 | 1 | -1/+1 |
| | | | | llvm-svn: 61273 | ||||
* | Fix <rdar://problem/6454568>: BugReporter should correctly handle switch ↵ | Ted Kremenek | 2008-12-20 | 1 | -5/+7 |
| | | | | | | statements with no default case. llvm-svn: 61270 | ||||
* | avoid using a typedef that isn't always included from headers. | Chris Lattner | 2008-12-19 | 1 | -1/+1 |
| | | | | llvm-svn: 61269 | ||||
* | More encoding support. This time for | Fariborz Jahanian | 2008-12-19 | 4 | -42/+104 |
| | | | | | | @encode of classes and bitfields. llvm-svn: 61268 | ||||
* | Get rid of the old Expr::Evaluate variant. | Anders Carlsson | 2008-12-19 | 4 | -30/+17 |
| | | | | llvm-svn: 61260 | ||||
* | Pass -fblocks to clang | Anders Carlsson | 2008-12-19 | 1 | -0/+1 |
| | | | | llvm-svn: 61258 | ||||
* | Add a missing @end. Why didn't this get diagnosed? | Douglas Gregor | 2008-12-19 | 1 | -0/+1 |
| | | | | llvm-svn: 61256 | ||||
* | Support more implicit conversions for Objective-C types. Addresses ↵ | Douglas Gregor | 2008-12-19 | 3 | -10/+128 |
| | | | | | | <rdar://problem/6458293>. llvm-svn: 61255 | ||||
* | Test case for my last @encode patch. | Fariborz Jahanian | 2008-12-19 | 1 | -0/+17 |
| | | | | llvm-svn: 61247 | ||||
* | Allow downcasts of pointers to Objective-C interfaces, with a | Douglas Gregor | 2008-12-19 | 8 | -16/+64 |
| | | | | | | | warning. This matches GCC's behavior and addresses <rdar://problem/6458293>. llvm-svn: 61246 | ||||
* | Fix for PR3234 | Anders Carlsson | 2008-12-19 | 3 | -0/+30 |
| | | | | llvm-svn: 61245 | ||||
* | Updated checker build. | Ted Kremenek | 2008-12-19 | 1 | -1/+1 |
| | | | | llvm-svn: 61233 | ||||
* | Several@encode bug fixes for ObjC. | Fariborz Jahanian | 2008-12-19 | 1 | -2/+10 |
| | | | | llvm-svn: 61231 | ||||
* | Update Xcode project. | Ted Kremenek | 2008-12-19 | 1 | -2/+10 |
| | | | | llvm-svn: 61230 | ||||
* | Add some more implicit conversions for Objective-C++ | Douglas Gregor | 2008-12-18 | 2 | -0/+32 |
| | | | | llvm-svn: 61229 | ||||
* | Added test case for suppressing leak warnings for reference-counted objects ↵ | Ted Kremenek | 2008-12-18 | 1 | -0/+9 |
| | | | | | | passed by-reference to an unknown function. llvm-svn: 61227 | ||||
* | Fix regression when invalidating reference-counts for objects ↵ | Ted Kremenek | 2008-12-18 | 1 | -8/+9 |
| | | | | | | passed-by-reference to a function/method. llvm-svn: 61224 | ||||
* | Don't define __STDC__ when compiling with -fms-extensions | Steve Naroff | 2008-12-18 | 1 | -1/+2 |
| | | | | llvm-svn: 61223 | ||||
* | Don't check initializers when there are dependent types or type-dependent ↵ | Douglas Gregor | 2008-12-18 | 1 | -0/+3 |
| | | | | | | expressions involved llvm-svn: 61212 | ||||
* | Ultrasimplistic sketch for the parsing of C++ template-ids. This won't | Douglas Gregor | 2008-12-18 | 13 | -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 Kremenek | 2008-12-18 | 1 | -1/+1 |
| | | | | llvm-svn: 61205 | ||||
* | Removed a slot in ObjCMemRegExpr used in | Fariborz Jahanian | 2008-12-18 | 7 | -17/+40 |
| | | | | | | code gen which did not belong there. llvm-svn: 61203 | ||||
* | Fix http://llvm.org/bugs/show_bug.cgi?id=3189. | Steve Naroff | 2008-12-18 | 2 | -2/+52 |
| | | | | llvm-svn: 61202 | ||||
* | add a simple fast-path for the common case of [] and [4] in | Chris Lattner | 2008-12-18 | 1 | -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 argument | Chris Lattner | 2008-12-18 | 1 | -1/+1 |
| | | | | llvm-svn: 61199 | ||||
* | disallow attributes in a few callers of ParseTypeQualifierListOpt, | Chris Lattner | 2008-12-18 | 2 | -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 Lattner | 2008-12-18 | 4 | -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 Xu | 2008-12-18 | 1 | -1/+5 |
| | | | | llvm-svn: 61193 | ||||
* | Allow ABI to use StructRet even for scalar values. | Daniel Dunbar | 2008-12-18 | 1 | -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 Lattner | 2008-12-18 | 2 | -4/+13 |
| | | | | | | void foo() { return foo(); } llvm-svn: 61188 | ||||
* | Merge function-return.c into function.c | Chris Lattner | 2008-12-18 | 6 | -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++ mode | Chris Lattner | 2008-12-18 | 2 | -0/+19 |
| | | | | llvm-svn: 61180 | ||||
* | Updated checker build. | Ted Kremenek | 2008-12-17 | 1 | -1/+1 |
| | | | | llvm-svn: 61173 | ||||
* | Rewrite PTHLexer::DiscardToEndOfLine() to not use GetToken and instead only ↵ | Ted Kremenek | 2008-12-17 | 1 | -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 initializers | Nuno Lopes | 2008-12-17 | 2 | -10/+27 |
| | | | | llvm-svn: 61171 | ||||
* | Change PTHLexer::getSourceLocation() to not call GetToken() and instead just ↵ | Ted Kremenek | 2008-12-17 | 2 | -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 Kremenek | 2008-12-17 | 1 | -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 |