- Nov 14, 2008
-
-
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
-
Zhongxing Xu authored
llvm-svn: 59294
-
Ted Kremenek authored
llvm-svn: 59290
-
Ted Kremenek authored
Update include files. llvm-svn: 59284
-
- Nov 13, 2008
-
-
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
it to be evaluated by APSInt::operators. llvm-svn: 59238
-
Zhongxing Xu authored
llvm-svn: 59235
-
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
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
-
Ted Kremenek authored
llvm-svn: 59222
-
Ted Kremenek authored
- Don't crash on vector types. - Handle typedefs. llvm-svn: 59220
-
- Nov 12, 2008
-
-
Ted Kremenek authored
Update CFGStmtVisitor to recognize that ObjCForCollectionStmts are special block-level "expressions". llvm-svn: 59176
-
Ted Kremenek authored
llvm-svn: 59162
-
Ted Kremenek authored
llvm-svn: 59161
-
Ted Kremenek authored
Add (preliminary) transfer function support for ObjCForCollectionStmt. Still need to flesh out some logic. When processing DeclStmt, use the new interface to StateManager::BindDecl. Conjuring of symbols is now done in VisitDeclStmt. llvm-svn: 59155
-
Ted Kremenek authored
llvm-svn: 59154
-
Ted Kremenek authored
llvm-svn: 59153
-
Ted Kremenek authored
- Rename SetSVal to BindLoc - Add BindDecl - Add BindExpr GRState: - Environment now binds to Stmt* instead of Expr*. This is needed for processing ObjCForCollectionStmt (essentially the declaration of the the 'element' variable can have an SVal attached to it). - BindDecl no longer accepts Expr* for the initialization value; use SVal* instead. llvm-svn: 59152
-
Ted Kremenek authored
StoreManager::BindDecl now takes an SVal* for the initialization value instead of an Expr* (which can be null). Lazy symbolication of conjured symbols is now the sole responsibility of GRExprEngine. llvm-svn: 59151
-
- Nov 11, 2008
-
-
Ted Kremenek authored
- Added support for ObjCForCollectionStmt - Fixed bug where expression values would be always set to uninitialized when loops were involved llvm-svn: 59076
-
Ted Kremenek authored
llvm-svn: 59075
-
Sebastian Redl authored
Introduce a single AST node SizeOfAlignOfExpr for all sizeof and alignof expressions, both of values and types. llvm-svn: 59057
-
Ted Kremenek authored
llvm-svn: 59053
-
Zhongxing Xu authored
llvm-svn: 59015
-
- Nov 10, 2008
-
-
Zhongxing Xu authored
llvm-svn: 58985
-
Zhongxing Xu authored
Implement RegionStoreManager::RemoveDeadBindings(). This prunes several false warning caused by removal of symbolic constraints. Currently we just mark all symbols live. Further optimization for dead binding removal needed. llvm-svn: 58982
-
Zhongxing Xu authored
Print integer value instead of raw pointer. This is a hack to be fixed by migrating the output in analyzer to llvm::raw_ostream. llvm-svn: 58965
-
Chris Lattner authored
llvm-svn: 58956
-
- Nov 08, 2008
-
-
Zhongxing Xu authored
llvm-svn: 58886
-
- Nov 07, 2008
-
-
Zhongxing Xu authored
available, things get much simplified. One addition is that CompoundLiteralExpr can appear both in rvalue and lvalue context. llvm-svn: 58837
-
Zhongxing Xu authored
llvm-svn: 58833
-
- Nov 05, 2008
-
-
Ted Kremenek authored
llvm-svn: 58771
-
Ted Kremenek authored
llvm-svn: 58758
-
- Nov 04, 2008
-
-
Douglas Gregor authored
Add a new expression class, ObjCSuperExpr, to handle the Objective-C 'super'. Remove ObjCThis from PredefinedExpr llvm-svn: 58698
-
Ted Kremenek authored
llvm-svn: 58666
-
- Nov 03, 2008
-
-
Zhongxing Xu authored
llvm-svn: 58597
-