diff options
| author | Ted Kremenek <kremenek@apple.com> | 2010-01-05 00:15:18 +0000 |
|---|---|---|
| committer | Ted Kremenek <kremenek@apple.com> | 2010-01-05 00:15:18 +0000 |
| commit | de8e7447b6498294ec598f919f739be519c62716 (patch) | |
| tree | 3c39e23566476fe0cb006e21bc13b92bd17517d3 /clang/lib/Analysis/BasicConstraintManager.cpp | |
| parent | 646aacb097c27e86c754be5329e9c799f4d87067 (diff) | |
| download | bcm5719-llvm-de8e7447b6498294ec598f919f739be519c62716.tar.gz bcm5719-llvm-de8e7447b6498294ec598f919f739be519c62716.zip | |
Remove references to 'Checker' and 'GRTransferFuncs' from
GRStateManager. Having these references was an abstraction violation,
as they really should only be known about GRExprEngine.
This change required adding a new 'ProcessAssume' callback in
GRSubEngine. GRExprEngine implements this callback by calling
'EvalAssume' on all registered Checker objects as well as the
registered GRTransferFunc object.
llvm-svn: 92549
Diffstat (limited to 'clang/lib/Analysis/BasicConstraintManager.cpp')
| -rw-r--r-- | clang/lib/Analysis/BasicConstraintManager.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/clang/lib/Analysis/BasicConstraintManager.cpp b/clang/lib/Analysis/BasicConstraintManager.cpp index 6c3f7b2245d..6dfc470530a 100644 --- a/clang/lib/Analysis/BasicConstraintManager.cpp +++ b/clang/lib/Analysis/BasicConstraintManager.cpp @@ -49,8 +49,9 @@ class BasicConstraintManager : public SimpleConstraintManager { GRState::IntSetTy::Factory ISetFactory; public: - BasicConstraintManager(GRStateManager& statemgr) - : ISetFactory(statemgr.getAllocator()) {} + BasicConstraintManager(GRStateManager &statemgr, GRSubEngine &subengine) + : SimpleConstraintManager(subengine), + ISetFactory(statemgr.getAllocator()) {} const GRState* AssumeSymNE(const GRState* state, SymbolRef sym, const llvm::APSInt& V); @@ -88,9 +89,9 @@ public: } // end anonymous namespace -ConstraintManager* clang::CreateBasicConstraintManager(GRStateManager& StateMgr) -{ - return new BasicConstraintManager(StateMgr); +ConstraintManager* clang::CreateBasicConstraintManager(GRStateManager& statemgr, + GRSubEngine &subengine) { + return new BasicConstraintManager(statemgr, subengine); } const GRState* |

