- Nov 14, 2008
-
-
Ted Kremenek authored
Flow-sensitive uninitialized values analysis: properly handle the 'element' expression of ObjCForCollectionStmt (can be anything). llvm-svn: 59312
-
Douglas Gregor authored
function call created in response to the use of operator syntax that resolves to an overloaded operator in C++, e.g., "str1 + str2" that resolves to std::operator+(str1, str2)". We now build a CXXOperatorCallExpr in C++ when we pick an overloaded operator. (But only for binary operators, where we actually implement overloading) I decided *not* to refactor the current CallExpr to make it abstract (with FunctionCallExpr and CXXOperatorCallExpr as derived classes). Doing so would allow us to make CXXOperatorCallExpr a little bit smaller, at the cost of making the argument and callee accessors virtual. We won't know if this is going to be a win until we can parse lots of C++ code to determine how much memory we'll save by making this change vs. the performance penalty due to the extra virtual calls. llvm-svn: 59306
-
-
Douglas Gregor authored
Don't require us to manually number the statements and expressions in StmtNodes.def. We don't need stable numbers yet, renumbering is a pain, and LAST_STMT had the wrong value anyway. llvm-svn: 59300
-
Zhongxing Xu authored
llvm-svn: 59294
-
Ted Kremenek authored
llvm-svn: 59290
-
Ted Kremenek authored
Fix CFG construction for ObjCForCollectionStmt: 'element' expression can be anything that evaluates to an lvalue llvm-svn: 59289
-
Ted Kremenek authored
llvm-svn: 59285
-
Ted Kremenek authored
Update include files. llvm-svn: 59284
-
Ted Kremenek authored
Rename ExprDeclBitVector to BlkExprDeclBitVector, and store mappings from Stmt* to bit indices instead using Expr*. llvm-svn: 59283
-
Daniel Dunbar authored
llvm-svn: 59272
-
- Nov 13, 2008
-
-
Daniel Dunbar authored
developing clang. llvm-svn: 59270
-
Steve Naroff authored
llvm-svn: 59261
-
Douglas Gregor authored
candidates. Thanks to Chris for the review! llvm-svn: 59260
-
Steve Naroff authored
Fix an obscure rewriter bug when rewriting implementations that don't have a corresponding interface (found while doing random testing on another bug). llvm-svn: 59259
-
Chris Lattner authored
1. In the top level of ParseStatementOrDeclaration, don't eat a } if we just parsed a statement if it list there. Also, don't even bother emitting an error about a missing semicolon if the statement had a bug (an rbrace is fine). 2. In do/while parsing, don't require a 'while' to be present if the do body didn't parse. This allows us to generate a clean diagnostic for this code: t.c:1:22: error: expected expression void foo (void) { do . while (0); } ^ Thanks to Neil for pointing this out. llvm-svn: 59256
-
Chris Lattner authored
llvm-svn: 59255
-
Chris Lattner authored
llvm-svn: 59254
-
Chris Lattner authored
llvm-svn: 59253
-
rdar://problem/6343942Steve Naroff authored
and <rdar://problem/6344601> clang ObjC rewriter: crash passing Block parameter? llvm-svn: 59251
-
Ted Kremenek authored
Using llvm::OwningPtr<> for CurLexer and CurTokenLexer. This makes both the ownership semantics of these objects explicit within the Preprocessor and also tightens up the code (explicit deletes not needed). llvm-svn: 59249
-
Ted Kremenek authored
Use PushIncludeMacroStack/PopMacroStack instead of manually pushing/popping from IncludeMacroStack. This is both cleaner and makes the include stack transparently extensible. llvm-svn: 59248
-
Ted Kremenek authored
llvm-svn: 59247
-
Ted Kremenek authored
- Temporarily disabled test Analysis/array-struct.c for region store. llvm-svn: 59245
-
Zhongxing Xu authored
llvm-svn: 59240
-
Zhongxing Xu authored
llvm-svn: 59239
-
Zhongxing Xu authored
it to be evaluated by APSInt::operators. llvm-svn: 59238
-
Zhongxing Xu authored
llvm-svn: 59236
-
Zhongxing Xu authored
llvm-svn: 59235
-
Zhongxing Xu authored
llvm-svn: 59233
-
Zhongxing Xu authored
This is required by some operations, e.g., *p = 1; p[0] = 1;. Also set the AllocaRegion's type during the cast. llvm-svn: 59232
-
Zhongxing Xu authored
type when assigning to it. llvm-svn: 59229
-
Ted Kremenek authored
llvm-svn: 59227
-
Ted Kremenek authored
Correctly connect 'continue' and 'break' statements in Objective-C fast enumeration for blocks to the appropriate basic blocks. llvm-svn: 59226
-
Ted Kremenek authored
GRExprEngine/CFRefCount/GRSimpleVals: We don't do any special handling (yet) of vector types. Add explicit checks that when we process integers that they really are scalars. llvm-svn: 59225
-
Eli Friedman authored
some more bullet-proofing/enhancements for tryEvaluate. This shouldn't cause any behavior changes except for handling cases where we were crashing before and being able to evaluate a few more cases in tryEvaluate. This should settle the minor mess surrounding r59196. llvm-svn: 59224
-
Daniel Dunbar authored
- Resume running the always inliner pass always now that LLVM has been improved and functions with debug info can be inlined. - Remove unused header. llvm-svn: 59223
-
Ted Kremenek authored
llvm-svn: 59222
-
Daniel Dunbar authored
the Backend output should be done in binary mode. - I'd appreciate it if someone who has a Windows build could verify this. llvm-svn: 59221
-
Ted Kremenek authored
- Don't crash on vector types. - Handle typedefs. llvm-svn: 59220
-