diff options
author | Tim King <taking@google.com> | 2016-03-24 10:54:00 -0700 |
---|---|---|
committer | Tim King <taking@google.com> | 2016-03-24 10:54:00 -0700 |
commit | 5b8ced2895439fd9612bc3bf2485056f41219d03 (patch) | |
tree | fd4bcbedae9cfebe5a9352d792282871f480c083 /src/theory | |
parent | 1af684a72f31f54243eca9ef902c0e7ecd8486d7 (diff) |
Fix for a memory leak in InstStrategyCegqi.
Diffstat (limited to 'src/theory')
-rw-r--r-- | src/theory/quantifiers/inst_strategy_cbqi.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/theory/quantifiers/inst_strategy_cbqi.cpp b/src/theory/quantifiers/inst_strategy_cbqi.cpp index faad18c28..6ffd91334 100644 --- a/src/theory/quantifiers/inst_strategy_cbqi.cpp +++ b/src/theory/quantifiers/inst_strategy_cbqi.cpp @@ -35,7 +35,7 @@ using namespace CVC4::theory::arith; InstStrategyCbqi::InstStrategyCbqi( QuantifiersEngine * qe ) : QuantifiersModule( qe ), d_added_cbqi_lemma( qe->getUserContext() ) -//, d_added_inst( qe->getUserContext() ) +//, d_added_inst( qe->getUserContext() ) { } @@ -588,6 +588,13 @@ InstStrategyCegqi::InstStrategyCegqi( QuantifiersEngine * qe ) InstStrategyCegqi::~InstStrategyCegqi() throw () { delete d_out; + + for(std::map< Node, CegInstantiator * >::iterator i = d_cinst.begin(), + iend = d_cinst.end(); i != iend; ++i) { + CegInstantiator * instantiator = (*i).second; + delete instantiator; + } + d_cinst.clear(); } void InstStrategyCegqi::processResetInstantiationRound( Theory::Effort effort ) { |