- Aug 05, 2011
-
-
Anna Zaks authored
KeychainAPI checker: Generate an error on double allocation. Pull out getAsPointeeMemoryRegion so that it could be reused. llvm-svn: 136952
-
- Aug 04, 2011
-
-
Anna Zaks authored
KeychainAPI checker: Track additional pair of SecKeychain APIs. Also, keep exploring the transition on which a call to allocator function failed (to be able to find errors in examples like ErrorCodesFromDifferentAPISDoNotInterfere). llvm-svn: 136930
-
Anna Zaks authored
KeychainAPI checker: Refactor to make it easier to add more allocator/deallocator API pairs. Add the allocator function ID to the checker state. Better comments. llvm-svn: 136889
-
Anna Zaks authored
llvm-svn: 136852
-
Anna Zaks authored
KeychainAPI checker: Add basic diagnostics. Track MemoryRegion istead of SymbolicRef since the address might not be a symbolic value in some cases, for example in fooOnlyFree() test. llvm-svn: 136851
-
Ted Kremenek authored
llvm-svn: 136849
-
Ted Kremenek authored
[analyzer] rename all experimental checker packages to have 'experimental' be the common root package. llvm-svn: 136835
-
- Aug 03, 2011
-
-
Ted Kremenek authored
[analyzer] Introduce MallocOverflowSecurityChecker, a simple flow-sensitive checker that may be useful for security auditing. This checker is currently too noisy to be on by default. llvm-svn: 136804
-
Anna Zaks authored
Static Analyzer diagnostics visualization: when the last location on a path is end of the function, the arrow should point to the closing brace, not the statement before it. Patch by Ted Kremenek. llvm-svn: 136761
-
- Aug 02, 2011
-
-
Ted Kremenek authored
[analyzer] Drastically simplify ExprEngine::VisitInitListExpr() by assuming all initializer expressions have already been evaluated. llvm-svn: 136706
-
Anna Zaks authored
KeychainAPI checker: only check the paths on which the allocator function returned noErr. (+ minor cleanup) llvm-svn: 136694
-
Anna Zaks authored
Add a skeleton for the Keychain Services API Checker. Register it as OSX experimental for now. Note, the checker still does not handle tracking of escaped values, taking into account the return value of the allocator functions, nor the actual bug reporting.. llvm-svn: 136659
-
- Jul 31, 2011
-
-
Benjamin Kramer authored
llvm-svn: 136581
-
- Jul 29, 2011
-
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitDeclStmt because it isn't needed anymore. llvm-svn: 136522
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitCompoundLiteralExpr because it isn't needed anymore. llvm-svn: 136521
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitCastExpr because it isn't needed anymore. llvm-svn: 136520
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitObjCForCollectionStmt because it isn't needed anymore. llvm-svn: 136519
-
Ted Kremenek authored
[analyzer] Remove explicit argument processing from ExprEngine::VisitObjCMessage() since it is no longer needed. llvm-svn: 136518
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitLValObjCIvarRefExpr because it isn't needed anymore. llvm-svn: 136517
-
Ted Kremenek authored
llvm-svn: 136516
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitObjCPropertyRefExpr because it isn't needed anymore. llvm-svn: 136515
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitCallExpr because it isn't needed anymore. llvm-svn: 136514
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitMemberExpr because it isn't needed anymore. llvm-svn: 136513
-
Ted Kremenek authored
[analyzer] Remove recursive visitation in ExprEngine::VisitLvalArraySubscriptExpr() because it is no longer needed. llvm-svn: 136512
-
Chandler Carruth authored
llvm-svn: 136434
-
Ted Kremenek authored
Really remove FlatStoreManager and BasicStoreManager, this time from the driver. Also remove associated tests. Sorry for the messy commits; this is the result of a botched Git merge. llvm-svn: 136422
-
Ted Kremenek authored
Remove FlatStoreManager and BasicStoreManager. The latter has long been obsolete and the former has no had development in a long time. llvm-svn: 136420
-
Ted Kremenek authored
[analyzer] Overhaul how the static analyzer expects CFGs by forcing CFGs to be linearized only when used by the static analyzer. This required a rewrite of LiveVariables, and exposed a ton of subtle bugs. The motivation of this large change is to drastically simplify the logic in ExprEngine going forward. Some fallout is that the output of some BugReporterVisitors is not as accurate as before; those will need to be fixed over time. There is also some possible performance regression as RemoveDeadBindings will be called frequently; this can also be improved over time. llvm-svn: 136419
-
Ted Kremenek authored
[analyzer] fix bug in malloc checker where the tracked symbol would not properly be removed from the state. llvm-svn: 136418
-
Ted Kremenek authored
[analyzer] Add StoreManager::includedInBindings() to to query whether a region is used in any bindings. llvm-svn: 136416
-
Ted Kremenek authored
llvm-svn: 136415
-
Ted Kremenek authored
llvm-svn: 136414
-
Ted Kremenek authored
llvm-svn: 136413
-
Ted Kremenek authored
the proper expression. llvm-svn: 136412
-
- Jul 25, 2011
-
-
Chandler Carruth authored
SourceManager and FullSourceLoc. llvm-svn: 135969
-
Chandler Carruth authored
SourceManager and FullSourceLoc. llvm-svn: 135965
-
Chandler Carruth authored
llvm-svn: 135962
-
Chandler Carruth authored
FullSourceLoc::getInstantiationLoc to ...::getExpansionLoc. This is part of the API and documentation update from 'instantiation' as the term for macros to 'expansion'. llvm-svn: 135914
-
- Jul 23, 2011
-
-
Chris Lattner authored
them into the clang namespace. llvm-svn: 135852
-
- Jul 22, 2011
-
-
John McCall authored
methods, including indirectly overridden methods like those declared in protocols and categories. There are mismatches that we would like to diagnose but aren't yet, but this is fine for now. I looked at approaches that avoided doing this lookup unless we needed it, but the infer-related-result-type checks were doing it anyway, so I left it with the same fast-path check for no previous declartions of that selector. llvm-svn: 135743
-