- Oct 02, 2008
-
-
Ted Kremenek authored
Expand checking to include functions, not just methods. llvm-svn: 56938
-
- Oct 01, 2008
-
-
Ted Kremenek authored
llvm-svn: 56912
-
Ted Kremenek authored
Use this updated interface when invalidating arguments passed by reference; the type of symbol is of the object passed by reference, not the reference itself. llvm-svn: 56894
-
- Sep 30, 2008
-
-
Ted Kremenek authored
llvm-svn: 56832
-
Ted Kremenek authored
from the subexpression type to the expression type. llvm-svn: 56831
-
- Sep 28, 2008
-
-
Ted Kremenek authored
llvm-svn: 56755
-
- Sep 27, 2008
-
-
Ted Kremenek authored
llvm-svn: 56735
-
- Sep 26, 2008
-
-
Ted Kremenek authored
Move VLA processing logic from LiveVariables to CFG construction. This way all dataflow analyses "see" the VLA size expressions. llvm-svn: 56655
-
Ted Kremenek authored
Fixes <rdar://problem/6248086> llvm-svn: 56645
-
- Sep 21, 2008
-
-
Ted Kremenek authored
llvm-svn: 56405
-
Ted Kremenek authored
llvm-svn: 56403
-
Ted Kremenek authored
llvm-svn: 56402
-
Ted Kremenek authored
llvm-svn: 56401
-
Ted Kremenek authored
llvm-svn: 56394
-
- Sep 20, 2008
-
-
Ted Kremenek authored
Changed casing of many bug names. The convention will be to have bug names (mostly) lower cased, and categories use some capitalization. llvm-svn: 56385
-
Ted Kremenek authored
GRExprEngine: Use PostStore in EvalStore. Use a second version of EvalStore in EvalBinaryOperator to associate the store with the expression on the LHS. llvm-svn: 56383
-
- Sep 19, 2008
-
-
Ted Kremenek authored
Bug fix: for the base transfer function logic for casts, handle const casts as just propagating the value. llvm-svn: 56368
-
Ted Kremenek authored
For checking if a symbol >= value, we need to check if symbol == value || symbol > value. When checking symbol > value and we know that symbol != value, the path is infeasible only if value == maximum integer. For checking if a symbol <= value, we need to check if symbol == value || symbol < value. When checking symbol < value and we know that symbol != value, the path is infeasible only if value == minimum integer. Updated test case exercising this logic: we only prune paths if the values are unsigned. llvm-svn: 56354
-
Ted Kremenek authored
'symbol operator-reverse int'. This patch is a combination of code from Zhongxing Xu and myself (Zhongxing noticed this bug for the cases of relational operators). llvm-svn: 56351
-
Zhongxing Xu authored
llvm-svn: 56334
-
Ted Kremenek authored
llvm-svn: 56327
-
Ted Kremenek authored
llvm-svn: 56319
-
Ted Kremenek authored
Implement second part of PR 2600: NSError** parameter may be null, and should be checked before being dereferenced. llvm-svn: 56318
-
- Sep 18, 2008
-
-
Ted Kremenek authored
Change implementation of NSError** coding-style check to be invoked at the end of the retain/release analysis. llvm-svn: 56312
-
Ted Kremenek authored
"Method accepting NSError** argument should have non-void return value to indicate that an error occurred." Test case written, but the header needs to be delta-debugged reduced. Will commit shortly. llvm-svn: 56297
-
- Sep 17, 2008
-
-
Ted Kremenek authored
if we know that 'len != 0' and know that 'i == 0' then we know that 'i < len' must evaluate to true and cannot evaluate to false llvm-svn: 56260
-
- Sep 16, 2008
-
-
Ted Kremenek authored
motivated because it became clear that the number of subclasses of ProgramPoint would expand and we ran out of bits to represent a pointer variant. As a plus of this change, BlockEdge program points can now be represented explicitly without using a cache of CFGBlock* pairs in CFG. llvm-svn: 56245
-
- Sep 13, 2008
-
-
Ted Kremenek authored
"Here is a patch what replaces std::ostream with llvm::raw_ostream. This patch covers the AST library, but ignores Analysis lib." llvm-svn: 56185
-
- Sep 12, 2008
-
-
Ted Kremenek authored
llvm-svn: 56166
-
- Sep 03, 2008
-
-
Ted Kremenek authored
- Change definition of store::Region and store::Binding (once again) to make them real classes that just wrap pointers. This makes them more strictly typed, and allows specific implementations of Regions/Bindings to just subclass them. - minor renamings to RegionExtent and its subclasses - added a bunch of doxygen comments StoreManager: (static analyzer) - added 'iterBindings', an iteration method for iterating over the bindings of a store. It that takes a callback object (acting like a poor man's closure). - added 'getRVal' version for store::Binding. Will potentially phase the other versions of GetRVal in StoreManager out. - reimplemented 'getBindings' to be non-virtual and to use 'iterBindings' BasicStoreManager: (static analyzer) - implemented 'iterBindings' for BasicStoreManager llvm-svn: 55688
-
- Aug 30, 2008
-
-
Daniel Dunbar authored
llvm-svn: 55559
-
- Aug 29, 2008
-
-
Zhongxing Xu authored
llvm-svn: 55537
-
Zhongxing Xu authored
llvm-svn: 55536
-
Ted Kremenek authored
llvm-svn: 55526
-
Ted Kremenek authored
Migrated CFRefCount.cpp to use getBindings and BindingsAsString instead of making assumptions about the Store (removed dependence on GRState::vb_iterator). llvm-svn: 55522
-
Ted Kremenek authored
llvm-svn: 55519
-
Ted Kremenek authored
Remove Regions.h and Regions.cpp, since we are now using an even more abstract representation of "memory regions" in the static analyzer. llvm-svn: 55515
-
Ted Kremenek authored
Their precise semantics will be implemented by a specific StoreManager. Use function pointer to create the StoreManager in GRStateManager. This matches how we create ConstraintsManager. llvm-svn: 55514
-
- Aug 28, 2008
-
-
Ted Kremenek authored
llvm-svn: 55494
-
Ted Kremenek authored
llvm-svn: 55487
-