From eea8c29aa332e96f627f72c07a1dbe393d9496e6 Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Mon, 6 Jul 2009 21:58:46 +0000 Subject: Make 'BasicStoreManager' + 'NewCastRegion' testable from the command line using '-analyzer-store=basic-new-cast'. llvm-svn: 74865 --- clang/lib/Analysis/BasicStore.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'clang/lib/Analysis/BasicStore.cpp') diff --git a/clang/lib/Analysis/BasicStore.cpp b/clang/lib/Analysis/BasicStore.cpp index 19d641ee975..c897b2f3fcc 100644 --- a/clang/lib/Analysis/BasicStore.cpp +++ b/clang/lib/Analysis/BasicStore.cpp @@ -38,8 +38,8 @@ class VISIBILITY_HIDDEN BasicStoreManager : public StoreManager { const MemRegion* SelfRegion; public: - BasicStoreManager(GRStateManager& mgr) - : StoreManager(mgr), + BasicStoreManager(GRStateManager& mgr, bool useNewCastRegion = false) + : StoreManager(mgr, useNewCastRegion), VBFactory(mgr.getAllocator()), SelfRegion(0) {} @@ -126,6 +126,10 @@ StoreManager* clang::CreateBasicStoreManager(GRStateManager& StMgr) { return new BasicStoreManager(StMgr); } +StoreManager* clang::CreateBasicStoreNewCastManager(GRStateManager& StMgr) { + return new BasicStoreManager(StMgr, true); +} + SVal BasicStoreManager::getLValueVar(const GRState *state, const VarDecl* VD) { return ValMgr.makeLoc(MRMgr.getVarRegion(VD)); } -- cgit v1.2.3