- Aug 11, 2010
-
-
Zhongxing Xu authored
llvm-svn: 110784
-
Ted Kremenek authored
Have GRCoreEngine record the blocks where analysis was aborted because we visited a block too many times along a given path. This is to support the unreachable code analysis. llvm-svn: 110755
-
- Aug 09, 2010
-
-
Jordy Rose authored
llvm-svn: 110592
-
- Aug 07, 2010
-
-
Douglas Gregor authored
an lvalue of another, compatible Objective-C object type (e.g., a subclass). Introduce a new initialization sequence step kind to describe this binding, along with a new cast kind. Fixes PR7741. llvm-svn: 110513
-
Tom Care authored
Removed IdempotentOperationChecker from default analysis and returned back to a flag (-analyzer-check-idempotent-operations) - Added IdempotentOperationChecker to experimental analyses for testing purposes - Updated test cases to explictly call the checker llvm-svn: 110482
-
- Aug 06, 2010
-
-
Ted Kremenek authored
llvm-svn: 110473
-
Ted Kremenek authored
Nest variable declaration into into 'if' condition, thus restricting the scope of the variable and condensing the code. llvm-svn: 110472
-
Ted Kremenek authored
Use 'GenerateNode()' instead of 'GenerateSink()' when reporting a leak. A leak is not a hard enough bug to stop analyzing a path. llvm-svn: 110471
-
Zhongxing Xu authored
If all nodes are sunk, bail out early. This make the later check for checkersEvaluated really meaningful. llvm-svn: 110430
-
Zhongxing Xu authored
llvm-svn: 110392
-
Jordy Rose authored
When checking if a buffer access is valid, first make sure the buffer has a valid Loc. Fixes PR7830. llvm-svn: 110390
-
- Aug 05, 2010
-
-
Tom Care authored
Fixed logic error in UnreachableCodeChecker's marking algorithm that would sometimes allow for multiple sequential statements to be flagged. llvm-svn: 110353
-
Ted Kremenek authored
llvm-svn: 110330
-
Eli Friedman authored
llvm-svn: 110320
-
Zhongxing Xu authored
llvm-svn: 110317
-
Jordy Rose authored
Tweak GRState::unbindLoc to use makeWithStore, and make sure it's only called for non-region locations. llvm-svn: 110310
-
Jordy Rose authored
llvm-svn: 110309
-
Ted Kremenek authored
Correctly handle 'Class<...>' when examining Cocoa conventions in the static analyzer. Fixes a crash reported in <rdar://problem/8272168>. Patch by Henry Mason! llvm-svn: 110289
-
- Aug 04, 2010
-
-
Jordy Rose authored
Change the checker callback cache in GRExprEngine to be more compact (and IMHO a little easier to understand), and add the same sort of caching for EvalAssume (tied for least-used callback), mostly as proof-of-concept. Before we go further with these, we should figure out a way to reuse the visit-and-cache code in CheckerVisit. llvm-svn: 110191
-
- Aug 03, 2010
-
-
Tom Care authored
- Reporting now uses getUnreachableStmt which returns the Stmt* we should report - Indexing of reachable and visited blocks now use CFGBlock ID's instead of pointers - The CFG used in the unreachable search is now the unoptimized CFG - Added 'Dead code' category to warnings - Removed obsolete function getCondition - Simplified false positive detection based on properties of FindUnreachableEntryPoints llvm-svn: 110148
-
Jordy Rose authored
Makes GRState::makeWithStore private, to encourage clients to make store changes through GRState instead of directly accessing the StoreManager. Also adds cover methods for InvalidateRegion(s) and EnterStackFrame to GRState. This is in preparation for proposed region change notifications. No functionality change. llvm-svn: 110137
-
Zhongxing Xu authored
shouldn't put restrictions in store manager. llvm-svn: 110106
-
Zhongxing Xu authored
llvm-svn: 110102
-
Tom Care authored
Changed GRExprEngine to pass down a reference to itself when checkers are doing postanalysis. This allows the checker to gather information about the state of the engine when it has finished. - Exposed the worklist and BlockAborted flag in GRCoreEngine - Changed postanalysis checkers to use the new infrastructure llvm-svn: 110095
-
Ted Kremenek authored
Add -cc1 option '-unoptimized-cfg' to toggle using a CFG (for static analysis) that doesn't prune CFG edges. llvm-svn: 110087
-
- Aug 02, 2010
-
-
Ted Kremenek authored
calls when the enclosing object had retain/release state. Fixes <rdar://problem/8261992>. llvm-svn: 110068
-
John McCall authored
initializations now. llvm-svn: 110063
-
Ted Kremenek authored
lookups in the hashtable. llvm-svn: 110059
-
Zhongxing Xu authored
the top-level object. FlatStore now can bind and retrieve element and field regions. PR7297 is fixed by flat store. llvm-svn: 110020
-
- Jul 31, 2010
-
-
Ted Kremenek authored
After a lengthy design discussion, add support for "ownership attributes" for malloc/free checking. Patch by Andrew McGregor! llvm-svn: 109939
-
- Jul 30, 2010
-
-
Tom Care authored
llvm-svn: 109893
-
- Jul 29, 2010
-
-
Jordy Rose authored
Use a LazyCompoundVal to handle initialization with a string literal, rather than copying each character. llvm-svn: 109734
-
Ted Kremenek authored
Teach GRExprEngine::VisitLValue() about FloatingLiteral, ImaginaryLiteral, and CharacterLiteral. Fixes an assertion failure reported in PR 7675. llvm-svn: 109719
-
Ted Kremenek authored
Augment RegionStore::BindStruct() to bind symbolicated struct values. This fixes a false path issue reported in <rdar://problem/8243408> and also spurs another cause where the idempotent operations checker fires. llvm-svn: 109710
-
Ted Kremenek authored
llvm-svn: 109709
-
Ted Kremenek authored
llvm-svn: 109708
-
Ted Kremenek authored
Remove extraneous guards around the call to getConjuredSymbolVal(). These checks are already done within getConjuredSymbolVal() itself. llvm-svn: 109707
-
- Jul 28, 2010
-
-
Tom Care authored
- Allowed reporting of dead macros - Added path walking function to search for false positives in conditional statements - Updated some affected tests - Added some false positive test cases llvm-svn: 109561
-
Tom Care authored
Extracted out some useful common functions in IdempotentOperationChecker to their own CheckerHelpers file. llvm-svn: 109560
-
- Jul 27, 2010
-
-
Ted Kremenek authored
Finesse 'idempotent operations' analyzer issues to include the opcode of the binary operator for clearer error reporting. Also remove the 'Idempotent operation' prefix in messages; it's redundant since the bug type is the same. llvm-svn: 109527
-