- Oct 06, 2011
-
-
Ted Kremenek authored
Fix major regression in RetainCountChecker. DefaultSummaries were not being used when they were meant to be. Fixes <rdar://problem/10241614>. llvm-svn: 141250
-
Anna Zaks authored
[analyzer] Remove the last dependency on CheckerContext::getNodeBuilder() as well as the method itself. Checkers should not directly access NodeBuilder, nodes can be created by calling the CheckerContext's generateNode() methods. llvm-svn: 141249
-
Anna Zaks authored
[analyzer] OSAtomicChecker implements evalCall in a very invasive way - it essentially simulates inlining of compareAndSwap() by means of setting the NodeBuilder flags and calling ExprEngine directly. This commit introduces a new callback just for this checker to unblock checker API cleanup. llvm-svn: 141246
-
- Oct 05, 2011
-
-
Anna Zaks authored
[analyzer] Removing more references to CheckerContext::getNodeBuilder(): ask CheckerContext to generate the nodes. llvm-svn: 141136
-
- Oct 04, 2011
-
-
Anna Zaks authored
[analyzer] Removing references to CheckerContext::getNodeBuilder(): checkers can obtain block count directly from the Context. llvm-svn: 141112
-
Anna Zaks authored
llvm-svn: 141098
-
Anna Zaks authored
[analyzer] Remove redundant state (AnalysisContext pointer for every BinaryOperator tracked) from IdempotentOperationChecker. llvm-svn: 141045
-
- Oct 03, 2011
-
-
Anna Zaks authored
[analyzer] In UndefBranchChecker, use a node generator which does not create an edge/branching. (ExprEngine should be in charge of generating edges. The checkers should examine the condition and generate PostCondition node if needed.) llvm-svn: 141034
-
Anna Zaks authored
- Remove unused FindUndefExpr::ProgramStateManager. - The Condition parameter of the callback is the terminator of the block, no need to retrieve it again. llvm-svn: 141027
-
Argyrios Kyrtzidis authored
Instead of always storing all source locations for the selector identifiers we check whether all the identifiers are in a "standard" position; "standard" position is -Immediately before the arguments: -(id)first:(int)x second:(int)y; -With a space between the arguments: -(id)first: (int)x second: (int)y; -For nullary selectors, immediately before ';': -(void)release; In such cases we infer the locations instead of storing them. llvm-svn: 140989
-
- Oct 01, 2011
-
-
John McCall authored
to take a FunctionDecl* instead of an llvm::StringRef. Eventually we might push more logic in there, like using slightly different conventions for C++ methods. Also, fix a bug where 'copy' and 'create' were being caught in non-camel-cased strings. We want copyFoo and CopyFoo and XCopy but not Xcopy or xcopy. llvm-svn: 140911
-
- Sep 30, 2011
-
-
Anna Zaks authored
[analyzer] Fix a bug in RetainReleaseChecker diagnostics. It gives more precise error message on the modified test case (and prevents duplicate diagnostics when we purge at block granularity). llvm-svn: 140840
-
- Sep 28, 2011
-
-
Anna Zaks authored
llvm-svn: 140648
-
- Sep 24, 2011
-
-
Benjamin Kramer authored
Patch by Rui Paulo! llvm-svn: 140448
-
- Sep 23, 2011
-
-
David Blaikie authored
llvm-svn: 140367
-
- Sep 20, 2011
-
-
Anna Zaks authored
[analyzer] Refactor PathDiagnosticLocation: Make PathDiagnosticLocation(SourceLocation...) private. Most of the effort here goes to making BugReport refer to a PathDiagnosticLocation instead of FullSourceLocation. (Another step closer to the goal of having Diagnostics which can recover from invalid SourceLocations.) llvm-svn: 140182
-
- Sep 15, 2011
-
-
Anna Zaks authored
[analyzer] Refactor: make PathDiagnosticLocation responsible for validation of SourceLocations (commit 2 of ?): - Fix a fixme and move the logic of creating a PathDiagnosticLocation corresponding to a ProgramPoint into a PathDiagnosticLocation constructor. - Rename PathDiagnosticLocation::create to differentiate from the added constructor. llvm-svn: 139825
-
Anna Zaks authored
[analyzer] Refactor: make PathDiagnosticLocation responsible for validation of SourceLocations (commit 2 of ?): - Modify all PathDiagnosticLocation constructors that take Stmt to also requre LocationContext. - Add a constructor which should be used in case there is no valid statement/location (it will grab the location of the enclosing function). llvm-svn: 139763
-
- Sep 14, 2011
-
-
Anna Zaks authored
[analyzer] Refactor: Make PathDiagnosticLocation responsible for creating a valid object given an ExploadedNode (the same logic can be reused by other checkers). llvm-svn: 139672
-
- Sep 13, 2011
-
-
Douglas Gregor authored
language options. Use that .def file to declare the LangOptions class and initialize all of its members, eliminating a source of annoying initialization bugs. AST serialization changes are next up. llvm-svn: 139605
-
- Sep 03, 2011
-
-
Benjamin Kramer authored
llvm-svn: 139078
-
- Sep 02, 2011
-
-
Jordy Rose authored
And with that, TransferFuncs is gone! llvm-svn: 139003
-
Jordy Rose authored
[analyzer] Move RetainReleaseChecker to the Checkers library and rename it to RetainCountChecker...and clean up the file while I'm at it. llvm-svn: 139002
-
Jordy Rose authored
[analyzer] Move the knowledge of whether or not GC is enabled for the current analysis from CFRefCount to ExprEngine. Remove TransferFuncs from ExprEngine and AnalysisConsumer. Demote RetainReleaseChecker to a regular checker, and give it the name osx.cocoa.RetainCount (class name change coming shortly). Update tests accordingly. llvm-svn: 138998
-
Douglas Gregor authored
builtin types (When requested). This is another step toward making ASTUnit build the ASTContext as needed when loading an AST file, rather than doing so after the fact. No actual functionality change (yet). llvm-svn: 138985
-
- Sep 01, 2011
-
-
Zhongxing Xu authored
free() is returned by realloc(). Most code expect NULL. And we only need to transfer one final ProgramState. llvm-svn: 138937
-
- Aug 31, 2011
-
-
Jordy Rose authored
llvm-svn: 138875
-
- Aug 29, 2011
-
-
Anna Zaks authored
[analyzer] MacOSKeychainAPIChecker: Simplify getSymbolForRegion by using existing API. Thanks Jordy. llvm-svn: 138765
-
Anna Zaks authored
Fix: Bug 10798 - [analyzer] Crash when analyzing ICU. (A slight improvement on the previous commit.) llvm-svn: 138762
-
Anna Zaks authored
Patch by Jean-Daniel Dupas. Thanks for spotting and fixing! llvm-svn: 138757
-
- Aug 28, 2011
-
-
Jordy Rose authored
[analyzer] Change the check::RegionChanges callback to include the regions explicitly requested for invalidation. Also, allow CallOrObjCMessage to wrap a CXXConstructExpr as well. Finally, this allows us to remove the clunky whitelisting system from CFRefCount/RetainReleaseChecker. Slight regression due to CXXNewExprs not yet being handled in post-statement callbacks (PR forthcoming). llvm-svn: 138716
-
- Aug 26, 2011
-
-
Jeffrey Yasskin authored
Also convert stack-addr-ps.cpp to use the analyzer instead of just Sema, now that it doesn't crash, and extract the stack-block test into another file since it errors, and that prevents the analyzer from running. llvm-svn: 138613
-
- Aug 25, 2011
- Aug 24, 2011
-
-
Anna Zaks authored
llvm-svn: 138497
-
Anna Zaks authored
llvm-svn: 138493
-
Anna Zaks authored
[analyzer] MacOSKeychainAPIChecker: Provide reacher diagnostic trace by pointing to the allocation site when reporting a leak. llvm-svn: 138479
-
Anna Zaks authored
[analyzer] MacOSKeychainAPIChecker: Add reasoning about functions which MIGHT deallocate the memory region allocated with SecKeychain APIs. Specifically, when the buffer is passed to CFStringCreateWithBytesNoCopy along with a custom deallocator, which might potentially correctly release the memory. llvm-svn: 138417
-
Anna Zaks authored
[analyzer] MacOSKeychainAPIChecker: Retrieve the memory region which we are tracking even when it's no longer a SymbolicRegion, for example, when it is cast to char*. llvm-svn: 138415
-
Anna Zaks authored
llvm-svn: 138414
-