diff options
author | Morgan Deters <mdeters@cs.nyu.edu> | 2014-04-29 19:51:29 -0400 |
---|---|---|
committer | Morgan Deters <mdeters@cs.nyu.edu> | 2014-04-29 21:03:55 -0400 |
commit | c95872d478a9ff1f207b8945dba558ae4547f054 (patch) | |
tree | 94cccf1ae397db049e61c69f59093b9856e324c1 /src/theory/quantifiers/instantiation_engine.cpp | |
parent | 03c1daa126ecd86d1434c7512b73723687ea8ca0 (diff) |
Mostly resolves bug #561 memory leaks, and more.
Diffstat (limited to 'src/theory/quantifiers/instantiation_engine.cpp')
-rw-r--r-- | src/theory/quantifiers/instantiation_engine.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/theory/quantifiers/instantiation_engine.cpp b/src/theory/quantifiers/instantiation_engine.cpp index e5705882a..c8a08dad9 100644 --- a/src/theory/quantifiers/instantiation_engine.cpp +++ b/src/theory/quantifiers/instantiation_engine.cpp @@ -31,10 +31,15 @@ using namespace CVC4::theory::quantifiers; using namespace CVC4::theory::inst; InstantiationEngine::InstantiationEngine( QuantifiersEngine* qe, bool setIncomplete ) : -QuantifiersModule( qe ), d_setIncomplete( setIncomplete ), d_ierCounter( 0 ), d_performCheck( false ){ +QuantifiersModule( qe ), d_isup(NULL), d_i_ag(NULL), d_setIncomplete( setIncomplete ), d_ierCounter( 0 ), d_performCheck( false ){ } +InstantiationEngine::~InstantiationEngine() { + delete d_i_ag; + delete d_isup; +} + void InstantiationEngine::finishInit(){ //for UF terms if( !options::finiteModelFind() || options::fmfInstEngine() ){ @@ -48,14 +53,14 @@ void InstantiationEngine::finishInit(){ }else{ d_isup = NULL; } - InstStrategyAutoGenTriggers* i_ag = new InstStrategyAutoGenTriggers( d_quantEngine, Trigger::TS_ALL, 3 ); - i_ag->setGenerateAdditional( true ); - addInstStrategy( i_ag ); + d_i_ag = new InstStrategyAutoGenTriggers( d_quantEngine, Trigger::TS_ALL, 3 ); + d_i_ag->setGenerateAdditional( true ); + addInstStrategy( d_i_ag ); //addInstStrategy( new InstStrategyAddFailSplits( this, ie ) ); if( !options::finiteModelFind() && options::fullSaturateQuant() ){ addInstStrategy( new InstStrategyFreeVariable( d_quantEngine ) ); } - //d_isup->setPriorityOver( i_ag ); + //d_isup->setPriorityOver( d_i_ag ); //d_isup->setPriorityOver( i_agm ); //i_ag->setPriorityOver( i_agm ); } |