3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-17 11:26:17 +00:00

missing switch cases

This commit is contained in:
Nikolaj Bjorner 2022-04-19 16:20:02 +01:00
parent 5393f1d98f
commit ec57d3b15c
3 changed files with 15 additions and 3 deletions

View file

@ -169,6 +169,12 @@ public:
case s_primal_binary_delay: case s_primal_binary_delay:
m_trace_id = "maxres-bin-delay"; m_trace_id = "maxres-bin-delay";
break; break;
case s_rc2:
m_trace_id = "rc2";
break;
default:
UNREACHABLE();
break;
} }
} }
@ -371,6 +377,7 @@ public:
case s_primal: case s_primal:
case s_primal_binary: case s_primal_binary:
case s_primal_binary_delay: case s_primal_binary_delay:
case s_rc2:
return mus_solver(); return mus_solver();
case s_primal_dual: case s_primal_dual:
return primal_dual_solver(); return primal_dual_solver();

View file

@ -669,8 +669,11 @@ namespace q {
if (m_inst_queue.lazy_propagate()) if (m_inst_queue.lazy_propagate())
return true; return true;
for (unsigned i = 0; i < m_clauses.size(); ++i) for (unsigned i = 0; i < m_clauses.size(); ++i)
if (m_clauses[i]->m_bindings) if (m_clauses[i]->m_bindings) {
IF_VERBOSE(0, verbose_stream() << "missed propagation " << i << "\n"); IF_VERBOSE(0, verbose_stream() << "missed propagation " << i << "\n");
TRACE("q", display(tout));
break;
}
TRACE("q", tout << "no more propagation\n";); TRACE("q", tout << "no more propagation\n";);
return false; return false;

View file

@ -190,10 +190,11 @@ void asserted_formulas::push_scope() {
} }
void asserted_formulas::push_scope_core() { void asserted_formulas::push_scope_core() {
std::cout << "push\n";
reduce(); reduce();
commit(); commit();
SASSERT(inconsistent() || m_qhead == m_formulas.size() || m.limit().is_canceled()); SASSERT(inconsistent() || m_qhead == m_formulas.size() || m.limit().is_canceled());
TRACE("asserted_formulas_scopes", tout << "before push: " << m_scopes.size() << "\n";); TRACE("asserted_formulas_scopes", tout << "before push: " << m_scopes.size() << "\n");
m_scoped_substitution.push(); m_scoped_substitution.push();
m_scopes.push_back(scope()); m_scopes.push_back(scope());
scope & s = m_scopes.back(); scope & s = m_scopes.back();
@ -205,7 +206,7 @@ void asserted_formulas::push_scope_core() {
m_bv_sharing.push_scope(); m_bv_sharing.push_scope();
m_macro_manager.push_scope(); m_macro_manager.push_scope();
commit(); commit();
TRACE("asserted_formulas_scopes", tout << "after push: " << m_scopes.size() << "\n";); TRACE("asserted_formulas_scopes", tout << "after push: " << m_scopes.size() << "\n");
} }
void asserted_formulas::force_push() { void asserted_formulas::force_push() {
@ -260,6 +261,7 @@ bool asserted_formulas::check_well_sorted() const {
} }
void asserted_formulas::reduce() { void asserted_formulas::reduce() {
std::cout << "reduce\n";
if (inconsistent()) if (inconsistent())
return; return;
if (canceled()) if (canceled())