- Nov 15, 2008
-
-
Anders Carlsson authored
llvm-svn: 59371
-
Zhongxing Xu authored
llvm-svn: 59359
-
Anders Carlsson authored
llvm-svn: 59358
-
Zhongxing Xu authored
llvm-svn: 59356
-
Zhongxing Xu authored
llvm-svn: 59355
-
Ted Kremenek authored
llvm-svn: 59354
-
Ted Kremenek authored
llvm-svn: 59353
-
Ted Kremenek authored
Add a test case for compound assignments that lazily symbolicate the value of the LHS when the computation type is an integer of more bits. llvm-svn: 59352
-
Ted Kremenek authored
Reverted part of r59335: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20081110/009243.html In that patch I added a bogus type promotion for unary '!'. The real bug was more fallout from edges cases with compound assignments and conjured symbolic values. Now the conjured value has the type of the LHS expression, and we do a promotion to the computation type. We also now correctly do a conversion from the computation type back to the LHS type. llvm-svn: 59349
-
Ted Kremenek authored
llvm-svn: 59348
-
Anders Carlsson authored
llvm-svn: 59345
-
Ted Kremenek authored
llvm-svn: 59343
-
Ted Kremenek authored
Implement FIXME in GRExprEngine::VisitUnaryOperator() to handle implicit conversions caused by the '!' operator. This required adding some logic to GRSimpleVals to reason about nonloc::LocAsInteger SVals. This code appears to work fine, but it should eventually be cleaned up. llvm-svn: 59335
-
Ted Kremenek authored
llvm-svn: 59334
-
Zhongxing Xu authored
llvm-svn: 59332
-
Sebastian Redl authored
Thanks to Doug for the review. Actual effects of mutable to follow. llvm-svn: 59331
-
Argyrios Kyrtzidis authored
Thanks to Sebastian for the suggestion. llvm-svn: 59330
-
- Nov 14, 2008
-
-
Argyrios Kyrtzidis authored
llvm-svn: 59323
-
rdar://problem/6372970Steve Naroff authored
SynthBlockInitExpr() was not adding by-ref arguments to the init expr. llvm-svn: 59322
-
Ted Kremenek authored
- Block-expression for 'ObjCForCollectionStmt' is not alive before it occurs - Recursively visit 'element' expression for ObjCForCollectionStmt to get liveness for referenced block-level expressions and variables. llvm-svn: 59316
-
Ted Kremenek authored
Second attempt at implementation transfer function support for ObjCForCollectionStmt. We now assume that the 'element' expression can be any lvalue. llvm-svn: 59313
-
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
-