llvm-project/clang/lib/StaticAnalyzer/Core
Jordan Rose 7bfb415387 [analyzer] Account for the "interesting values" hash table resizing.
RegionStoreManager::getInterestingValues() returns a pointer to a
std::vector that lives inside a DenseMap, which is constructed on demand.
However, constructing one such value can lead to constructing another
value, which will invalidate the reference created earlier.

Fixed by delaying the new entry creation until the function returns.

llvm-svn: 175582
2013-02-20 00:27:26 +00:00
..
APSIntType.cpp [analyzer] Rework both constraint managers to handle mixed-type comparisons. 2012-05-08 03:27:16 +00:00
AnalysisManager.cpp Have AnalyzerOptions::getBooleanOption() stick the matching config 2012-10-01 18:28:19 +00:00
AnalyzerOptions.cpp [analyzer] Make shallow mode more shallow. 2013-01-30 19:12:39 +00:00
BasicValueFactory.cpp [analyzer] Disallow creation of int vals with explicit bit width / signedness. 2012-09-01 17:39:24 +00:00
BlockCounter.cpp Cleanup various declarations of 'Stmt*' to be 'Stmt *', etc. in libAnalyzer and libStaticAnalyzer[*]. It was highly inconsistent, and very ugly to look at. 2011-08-12 23:37:29 +00:00
BugReporter.cpp clang/lib/StaticAnalyzer/Core/BugReporter.cpp: Appease old msvc in std::pair(0, 0). 2013-02-09 01:22:23 +00:00
BugReporterVisitors.cpp Change subexpressions to be visited in the CFG from left-to-right. 2013-02-05 22:00:19 +00:00
CMakeLists.txt Remove ProgramState::getSymVal(). It was being misused by Checkers, 2012-09-07 22:31:01 +00:00
CallEvent.cpp [analyzer] Address Jordan's nitpicks as per code review of r170625. 2012-12-21 01:50:14 +00:00
Checker.cpp Reapply r149311 which I reverted by mistake. 2012-01-31 02:23:28 +00:00
CheckerContext.cpp [analyzer] Add some convenience accessors to CallEvent, and use them. 2012-11-02 23:49:29 +00:00
CheckerHelpers.cpp Split 'include/clang/StaticAnalyzer' into 'include/clang/StaticAnalyzer/Core' and 'include/clang/StaticAnalyzer/Checkers'. 2011-02-10 01:03:03 +00:00
CheckerManager.cpp [analyzer] Add pointer escape type param to checkPointerEscape callback 2013-02-07 23:05:43 +00:00
CheckerRegistry.cpp Remove useless 'llvm::' qualifier from names like StringRef and others that are 2013-01-12 19:30:44 +00:00
ConstraintManager.cpp [analyzer] Let ConstraintManager subclasses provide a more efficient checkNull. 2012-10-31 16:44:55 +00:00
CoreEngine.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
Environment.cpp [analyzer] Use Clang's evaluation for global constants and default arguments. 2013-02-13 03:11:06 +00:00
ExplodedGraph.cpp [analyzer] Remove isa<> followed by dyn_cast<>. 2012-12-06 18:58:29 +00:00
ExprEngine.cpp [analyzer] Use Clang's evaluation for global constants and default arguments. 2013-02-13 03:11:06 +00:00
ExprEngineC.cpp [analyzer] Remove redundant check as per Jordan's feedback. 2013-02-07 23:29:22 +00:00
ExprEngineCXX.cpp Re-apply "[analyzer] Model trivial copy/move ctors with an aggregate bind." 2013-02-15 00:32:15 +00:00
ExprEngineCallAndReturn.cpp Re-apply "[analyzer] Model trivial copy/move ctors with an aggregate bind." 2013-02-15 00:32:15 +00:00
ExprEngineObjC.cpp [analyzer] Remove unused fields from ExprEngine. 2012-12-06 18:58:26 +00:00
FunctionSummary.cpp [analyzer] Record the basic blocks covered by the analyzes run. 2012-04-03 02:05:47 +00:00
HTMLDiagnostics.cpp Pass AnalyzerOptions to PathDiagnosticConsumer to make analyzer options accessible there. 2012-12-19 01:35:35 +00:00
Makefile
MemRegion.cpp [analyzer] Refactor RegionStore's sub-region bindings traversal. 2013-02-15 00:32:03 +00:00
PathDiagnostic.cpp [analyzer] Don't show "Entered 'foo'" if 'foo' is implicit. 2013-01-19 19:52:57 +00:00
PlistDiagnostics.cpp Remove useless 'llvm::' qualifier from names like StringRef and others that are 2013-01-12 19:30:44 +00:00
ProgramState.cpp [analyzer] Scan the correct store when finding symbols in a LazyCompoundVal. 2013-02-15 00:32:10 +00:00
RangeConstraintManager.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
RegionStore.cpp [analyzer] Account for the "interesting values" hash table resizing. 2013-02-20 00:27:26 +00:00
SValBuilder.cpp [analyzer] Teach the analyzer to use a symbol for p when evaluating 2013-02-05 19:52:28 +00:00
SVals.cpp [analyzer] Reuse a LazyCompoundVal if its type matches the new region. 2013-02-01 19:49:57 +00:00
SimpleConstraintManager.cpp [analyzer] Make ProgramStateManager's SubEngine parameter optional. 2012-10-01 16:53:40 +00:00
SimpleConstraintManager.h [analyzer] Make ProgramStateManager's SubEngine parameter optional. 2012-10-01 16:53:40 +00:00
SimpleSValBuilder.cpp [analyzer] Fix typo. 2013-02-02 00:29:59 +00:00
Store.cpp [analyzer] Don't assert when mixing reinterpret_cast and derived-to-base casts. 2013-02-15 01:23:24 +00:00
SubEngine.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:48:34 +00:00
SymbolManager.cpp [analyzer] Run remove dead on end of path. 2012-11-03 02:54:20 +00:00
TextPathDiagnostics.cpp Pass AnalyzerOptions to PathDiagnosticConsumer to make analyzer options accessible there. 2012-12-19 01:35:35 +00:00