From 9d3518736bda418f6a4a9b82d12cceaf83fee0b4 Mon Sep 17 00:00:00 2001 From: Nikolaj Bjorner Date: Mon, 6 Nov 2017 15:25:10 -0800 Subject: [PATCH] fix #889 Signed-off-by: Nikolaj Bjorner --- src/ast/ast.cpp | 8 +------- src/smt/asserted_formulas.cpp | 9 ++++++--- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/ast/ast.cpp b/src/ast/ast.cpp index 7eae396ff..98c1bdfed 100644 --- a/src/ast/ast.cpp +++ b/src/ast/ast.cpp @@ -1683,7 +1683,7 @@ ast * ast_manager::register_node_core(ast * n) { bool contains = m_ast_table.contains(n); CASSERT("nondet_bug", contains || slow_not_contains(n)); #endif - + #if 0 static unsigned counter = 0; counter++; @@ -1719,12 +1719,6 @@ ast * ast_manager::register_node_core(ast * n) { n->m_id = is_decl(n) ? m_decl_id_gen.mk() : m_expr_id_gen.mk(); - static unsigned count = 0; - if (n->m_id == 404) { - ++count; - //if (count == 2) SASSERT(false); - } - TRACE("ast", tout << "Object " << n->m_id << " was created.\n";); TRACE("mk_var_bug", tout << "mk_ast: " << n->m_id << "\n";); // increment reference counters diff --git a/src/smt/asserted_formulas.cpp b/src/smt/asserted_formulas.cpp index dd92f250a..56600266a 100644 --- a/src/smt/asserted_formulas.cpp +++ b/src/smt/asserted_formulas.cpp @@ -511,11 +511,14 @@ void asserted_formulas::update_substitution(expr* n, proof* pr) { } TRACE("propagate_values", tout << "incompatible " << mk_pp(n, m) << "\n";); } - if (m.is_not(n, n1)) { - m_scoped_substitution.insert(n1, m.mk_false(), m.proofs_enabled() ? m.mk_iff_false(pr) : nullptr); + proof_ref pr1(m); + if (m.is_not(n, n1)) { + pr1 = m.proofs_enabled() ? m.mk_iff_false(pr) : nullptr; + m_scoped_substitution.insert(n1, m.mk_false(), pr1); } else { - m_scoped_substitution.insert(n, m.mk_true(), m.proofs_enabled() ? m.mk_iff_true(pr) : nullptr); + pr1 = m.proofs_enabled() ? m.mk_iff_true(pr) : nullptr; + m_scoped_substitution.insert(n, m.mk_true(), pr1); } }