diff options
Diffstat (limited to 'src/expr')
-rw-r--r-- | src/expr/expr_manager.i | 1 | ||||
-rw-r--r-- | src/expr/node_manager.cpp | 54 |
2 files changed, 28 insertions, 27 deletions
diff --git a/src/expr/expr_manager.i b/src/expr/expr_manager.i index 7cc635259..dbfd01242 100644 --- a/src/expr/expr_manager.i +++ b/src/expr/expr_manager.i @@ -37,6 +37,7 @@ #endif /* SWIGOCAML */ %ignore CVC4::stats::getStatisticsRegistry(ExprManager*); +%ignore CVC4::ExprManager::getResourceManager(); %include "expr/expr_manager.h" diff --git a/src/expr/node_manager.cpp b/src/expr/node_manager.cpp index 39be675ec..367162420 100644 --- a/src/expr/node_manager.cpp +++ b/src/expr/node_manager.cpp @@ -91,34 +91,34 @@ namespace attr { // attribute that stores the canonical bound variable list for function types typedef expr::Attribute<attr::LambdaBoundVarListTag, Node> LambdaBoundVarListAttr; -NodeManager::NodeManager(ExprManager* exprManager) : - d_options(new Options()), - d_statisticsRegistry(new StatisticsRegistry()), - d_resourceManager(new ResourceManager()), - d_registrations(new ListenerRegistrationList()), - next_id(0), - d_attrManager(new expr::attr::AttributeManager()), - d_exprManager(exprManager), - d_nodeUnderDeletion(NULL), - d_inReclaimZombies(false), - d_abstractValueCount(0), - d_skolemCounter(0) { +NodeManager::NodeManager(ExprManager* exprManager) + : d_options(new Options()), + d_statisticsRegistry(new StatisticsRegistry()), + d_resourceManager(new ResourceManager(*d_statisticsRegistry, *d_options)), + d_registrations(new ListenerRegistrationList()), + next_id(0), + d_attrManager(new expr::attr::AttributeManager()), + d_exprManager(exprManager), + d_nodeUnderDeletion(NULL), + d_inReclaimZombies(false), + d_abstractValueCount(0), + d_skolemCounter(0) +{ init(); } -NodeManager::NodeManager(ExprManager* exprManager, - const Options& options) : - d_options(new Options()), - d_statisticsRegistry(new StatisticsRegistry()), - d_resourceManager(new ResourceManager()), - d_registrations(new ListenerRegistrationList()), - next_id(0), - d_attrManager(new expr::attr::AttributeManager()), - d_exprManager(exprManager), - d_nodeUnderDeletion(NULL), - d_inReclaimZombies(false), - d_abstractValueCount(0), - d_skolemCounter(0) +NodeManager::NodeManager(ExprManager* exprManager, const Options& options) + : d_options(new Options()), + d_statisticsRegistry(new StatisticsRegistry()), + d_resourceManager(new ResourceManager(*d_statisticsRegistry, *d_options)), + d_registrations(new ListenerRegistrationList()), + next_id(0), + d_attrManager(new expr::attr::AttributeManager()), + d_exprManager(exprManager), + d_nodeUnderDeletion(NULL), + d_inReclaimZombies(false), + d_abstractValueCount(0), + d_skolemCounter(0) { d_options->copyValues(options); init(); @@ -228,12 +228,12 @@ NodeManager::~NodeManager() { } // defensive coding, in case destruction-order issues pop up (they often do) + delete d_resourceManager; + d_resourceManager = NULL; delete d_statisticsRegistry; d_statisticsRegistry = NULL; delete d_registrations; d_registrations = NULL; - delete d_resourceManager; - d_resourceManager = NULL; delete d_attrManager; d_attrManager = NULL; delete d_options; |