- Mar 09, 2012
-
-
Ted Kremenek authored
Essentially, a bug centers around a story for various symbols and regions. We should only include the path diagnostic events that relate to those symbols and regions. The pruning is done by associating a set of interesting symbols and regions with a BugReporter, which can be modified at BugReport creation or by BugReporterVisitors. This patch reduces the diagnostics emitted in several of our test cases. I've vetted these as having desired behavior. The only regression is a missing null check diagnostic for the return value of realloc() in test/Analysis/malloc-plist.c. This will require some investigation to fix, and I have added a FIXME to the test case. llvm-svn: 152361
-
- Feb 05, 2012
-
-
Dylan Noblesmith authored
(I was going to fix the TODO about DenseMap too, but that would break self-host right now. See PR11922.) llvm-svn: 149799
-
Dylan Noblesmith authored
llvm-svn: 149798
-
- Feb 04, 2012
-
-
Benjamin Kramer authored
Fix all the transitive include users. llvm-svn: 149783
-
- Jan 26, 2012
-
-
Ted Kremenek authored
At this point this is largely cosmetic, but it opens the door to replace ProgramStateRef with a smart pointer that more eagerly acts in the role of reclaiming unused ProgramState objects. llvm-svn: 149081
-
- Jan 06, 2012
-
-
Ted Kremenek authored
(Stmt*,LocationContext*) pairs to SVals instead of Stmt* to SVals. This is needed to support basic IPA via inlining. Without this, we cannot tell if a Stmt* binding is part of the current analysis scope (StackFrameContext) or part of a parent context. This change introduces an uglification of the use of getSVal(), and thus takes two steps forward and one step back. There are also potential performance implications of enlarging the Environment. Both can be addressed going forward by refactoring the APIs and optimizing the internal representation of Environment. This patch mainly introduces the functionality upon when we want to build upon (and clean up). llvm-svn: 147688
-
- Dec 01, 2011
-
-
Anna Zaks authored
We are getting name of the called function or it's declaration in a few checkers. Refactor them to use the helper function in the CheckerContext. llvm-svn: 145576
-
- Oct 26, 2011
-
-
Anna Zaks authored
Also document addTransition methods. llvm-svn: 143059
-
- Oct 25, 2011
-
-
Anna Zaks authored
Remove dead members/parameters: ProgramState, respondsToCallback, autoTransition. Remove addTransition method since it's the same as generateNode. Maybe we should rename generateNode to genTransition (since a transition is always automatically generated)? llvm-svn: 142946
-
- Sep 02, 2011
-
-
Jordy Rose authored
And with that, TransferFuncs is gone! llvm-svn: 139003
-
- Aug 20, 2011
-
-
Anna Zaks authored
Static Analyzer Diagnostics: Kill the addVisitorCreator(callbackTy, void*) API in favor of addVisitor(BugReporterVisitor*). 1) Create a header file to expose the predefined visitors. And move the parent(BugReporterVisitor) there as well. 2) Remove the registerXXXVisitor functions - the Visitor constructors/getters can be used now to create the object. One exception is registerVarDeclsLastStore(), which registers more then one visitor, so make it static member of FindLastStoreBRVisitor. 3) Modify all the checkers to use the new API. llvm-svn: 138126
-
- Aug 18, 2011
-
-
Anna Zaks authored
Remove EnhancedBugReport and RangedBugReport - pull all the extra functionality they provided into their parent BugReport. The only functional changes are: made getRanges() non const - it adds default range to Ranges if none are supplied, made getStmt() private, which was another FIXME. llvm-svn: 137894
-
- Aug 16, 2011
-
-
Ted Kremenek authored
llvm-svn: 137665
-
- Aug 13, 2011
-
-
Ted Kremenek authored
Cleanup various declarations of 'Stmt*' to be 'Stmt *', etc. in libAnalyzer and libStaticAnalyzer[*]. It was highly inconsistent, and very ugly to look at. llvm-svn: 137537
-
- Aug 12, 2011
-
-
Ted Kremenek authored
[analyzer] Introduce new MemRegion, "TypedValueRegion", so that we can separate TypedRegions that implement getValueType() from those that don't. Patch by Olaf Krzikalla! llvm-svn: 137498
-
- Jul 23, 2011
-
-
Chris Lattner authored
them into the clang namespace. llvm-svn: 135852
-
- Jul 16, 2011
-
-
Ted Kremenek authored
[analyzer] Place checking for Core Foundation "Create" rule into a proper API. No functionality change. llvm-svn: 135349
-
- Apr 19, 2011
-
-
Anders Carlsson authored
llvm-svn: 129741
-
- Apr 12, 2011
-
-
Ted Kremenek authored
llvm-svn: 129395
-
- Mar 17, 2011
-
-
Ted Kremenek authored
llvm-svn: 127798
-
Ted Kremenek authored
Teach VariadicMethodTypeChecker that CF references are valid arguments to variadic Objective-C methods. llvm-svn: 127797
-
- Mar 16, 2011
-
-
Ted Kremenek authored
VariadicMethodTypeChecker: don't warn for null pointer constants passed to variadic Objective-C methods. llvm-svn: 127719
-
- Mar 14, 2011
-
-
Ted Kremenek authored
Tweak VariadicMethodTypeChecker to only create one ExplodedNode when issuing multiple warnings for the same message expression. Also add a test case showing that we correctly report multiple warnings for the same message expression. llvm-svn: 127605
-
- Mar 13, 2011
-
-
Anders Carlsson authored
Add an Objective-C checker that checks that arguments passed to some variadic Objective-C methods are of Objective-C pointer types. Ted or Argiris, I'd appreciate a review! llvm-svn: 127572
-
- Mar 08, 2011
-
-
Anders Carlsson authored
Make the Objective-C checker look for subclasses of NSString instead of just NSString and NSMutableString. llvm-svn: 127268
-
- Mar 01, 2011
-
-
Argyrios Kyrtzidis authored
llvm-svn: 126726
-
- Feb 28, 2011
-
-
Argyrios Kyrtzidis authored
llvm-svn: 126690
-
- Feb 23, 2011
-
-
Argyrios Kyrtzidis authored
CastToStructChecker FixedAddressChecker MacOSXAPIChecker PointerArithChecker PointerSubChecker PthreadLockChecker UnixAPIChecker llvm-svn: 126284
-
Argyrios Kyrtzidis authored
NilArgChecker CFNumberCreateChecker ClassReleaseChecker llvm-svn: 126275
-
- Feb 17, 2011
-
-
Argyrios Kyrtzidis authored
llvm-svn: 125777
-
- Feb 16, 2011
-
-
Zhanyong Wan authored
by kremenek. llvm-svn: 125687
-
Argyrios Kyrtzidis authored
NilArgChecker CFNumberCreateChecker NSAutoreleasePoolChecker CFRetainReleaseChecker ClassReleaseChecker llvm-svn: 125636
-
- Feb 10, 2011
-
-
Ted Kremenek authored
Split 'include/clang/StaticAnalyzer' into 'include/clang/StaticAnalyzer/Core' and 'include/clang/StaticAnalyzer/Checkers'. This layout matches lib/StaticAnalyzer, which corresponds to two StaticAnalyzer libraries. llvm-svn: 125251
-
- Jan 25, 2011
-
-
Argyrios Kyrtzidis authored
[analyzer] Introduce ObjCMessage which represents both explicit ObjC message expressions and implicit messages that are sent for handling properties in dot syntax. Replace all direct uses of ObjCMessageExpr in the checkers and checker interface with ObjCMessage. llvm-svn: 124159
-
Argyrios Kyrtzidis authored
[analyzer] Simplify GetReceiverType function in BasicObjCFoundationChecks.cpp; no functionality change. llvm-svn: 124157
-
- Dec 23, 2010
-
-
Ted Kremenek authored
layout. :) Rename the 'EntoSA' directories to 'StaticAnalyzer'. Internally we will still use the 'ento' namespace for the analyzer engine (unless there are further sabre rattlings...). llvm-svn: 122514
-
Ted Kremenek authored
update Makefile. llvm-svn: 122493
-
Ted Kremenek authored
llvm-svn: 122492
-
- Dec 22, 2010
-
-
Argyrios Kyrtzidis authored
llvm-svn: 122424
-
Argyrios Kyrtzidis authored
llvm-svn: 122423
-