diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-02-24 08:42:04 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-02-24 08:42:04 +0000 |
commit | 8f38c3843d16795daa5e3190bb002983c247fb87 (patch) | |
tree | 25047f7ff5a589a0aa86725fea91d24673229482 /clang/lib/StaticAnalyzer/Core/CheckerManager.cpp | |
parent | 7bc01410439547f3d3dbe0632302451d93810e52 (diff) | |
download | bcm5719-llvm-8f38c3843d16795daa5e3190bb002983c247fb87.tar.gz bcm5719-llvm-8f38c3843d16795daa5e3190bb002983c247fb87.zip |
[analyzer] Don't pass a GRState to CheckerManager::runCheckersForLocation, terrible mistake.
If the state is new, make sure an ExplodedNode is associated with it.
llvm-svn: 126370
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/CheckerManager.cpp')
-rw-r--r-- | clang/lib/StaticAnalyzer/Core/CheckerManager.cpp | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp b/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp index 68fac6e2776..75d331a131a 100644 --- a/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp +++ b/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp @@ -177,23 +177,20 @@ namespace { SVal Loc; bool IsLoad; const Stmt *S; - const GRState *State; ExprEngine &Eng; CheckersTy::const_iterator checkers_begin() { return Checkers.begin(); } CheckersTy::const_iterator checkers_end() { return Checkers.end(); } CheckLocationContext(const CheckersTy &checkers, - SVal loc, bool isLoad, const Stmt *s, - const GRState *state, ExprEngine &eng) - : Checkers(checkers), Loc(loc), IsLoad(isLoad), S(s), - State(state), Eng(eng) { } + SVal loc, bool isLoad, const Stmt *s, ExprEngine &eng) + : Checkers(checkers), Loc(loc), IsLoad(isLoad), S(s), Eng(eng) { } void runChecker(CheckerManager::CheckLocationFunc checkFn, ExplodedNodeSet &Dst, ExplodedNode *Pred) { CheckerContext C(Dst, Eng.getBuilder(), Eng, Pred, checkFn.Checker, IsLoad ? ProgramPoint::PreLoadKind : - ProgramPoint::PreStoreKind, 0, S, State); + ProgramPoint::PreStoreKind, 0, S); checkFn(Loc, IsLoad, C); } }; @@ -203,10 +200,8 @@ namespace { void CheckerManager::runCheckersForLocation(ExplodedNodeSet &Dst, const ExplodedNodeSet &Src, SVal location, bool isLoad, - const Stmt *S, - const GRState *state, - ExprEngine &Eng) { - CheckLocationContext C(LocationCheckers, location, isLoad, S, state, Eng); + const Stmt *S, ExprEngine &Eng) { + CheckLocationContext C(LocationCheckers, location, isLoad, S, Eng); expandGraphWithCheckers(C, Dst, Src); } |