j++)
{
if( d_vars[j].getKind()!=BOUND_VARIABLE ){
- d_var_mg[j] = NULL;
+ d_var_mg[j] = nullptr;
bool is_tsym = false;
if( !MatchGen::isHandledUfTerm( d_vars[j] ) && d_vars[j].getKind()!=ITE ){
is_tsym = true;
d_tsym_vars.push_back( j );
}
if( !is_tsym || options::qcfTConstraint() ){
- d_var_mg[j] = new MatchGen(p, this, d_vars[j], true);
+ d_var_mg[j] = std::make_unique<MatchGen>(p, this, d_vars[j], true);
}
if( !d_var_mg[j] || !d_var_mg[j]->isValid() ){
Trace("qcf-invalid") << "QCF invalid : cannot match for " << d_vars[j] << std::endl;
d_tconstraints.clear();
d_mg->reset_round();
- for (const std::pair<const size_t, MatchGen*>& vg : d_var_mg)
+ for (const std::pair<const size_t, std::unique_ptr<MatchGen>>& vg : d_var_mg)
{
if (!vg.second->reset_round())
{
class QuantInfo : protected EnvObj
{
public:
- typedef std::map<size_t, MatchGen*> VarMgMap;
+ using VarMgMap = std::map<size_t, std::unique_ptr<MatchGen>>;
QuantInfo(Env& env, QuantConflictFind* p, Node q);
~QuantInfo();
/** get quantified formula */
regress0/quantifiers/issue6996-trivial-elim.smt2
regress0/quantifiers/issue6999-deq-elim.smt2
regress0/quantifiers/issue7353-var-elim-par-dt.smt2
+ regress0/quantifiers/issue8001-mem-leak.smt2
regress0/quantifiers/lra-triv-gn.smt2
regress0/quantifiers/macro-back-subs-sat.smt2
regress0/quantifiers/macros-int-real.smt2