mirror of
https://github.com/Z3Prover/z3
synced 2025-08-08 12:11:23 +00:00
fix push/pop bug for ite-elimination, thanks to Nao Hirokawa for reporting it
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
de43e05102
commit
4c0db00a7b
4 changed files with 13 additions and 3 deletions
|
@ -184,6 +184,7 @@ void asserted_formulas::push_scope() {
|
|||
SASSERT(inconsistent() || s.m_formulas_lim == m_qhead || m.canceled());
|
||||
s.m_inconsistent_old = m_inconsistent;
|
||||
m_defined_names.push();
|
||||
m_elim_term_ite.push();
|
||||
m_bv_sharing.push_scope();
|
||||
m_macro_manager.push_scope();
|
||||
commit();
|
||||
|
@ -198,6 +199,7 @@ void asserted_formulas::pop_scope(unsigned num_scopes) {
|
|||
scope & s = m_scopes[new_lvl];
|
||||
m_inconsistent = s.m_inconsistent_old;
|
||||
m_defined_names.pop(num_scopes);
|
||||
m_elim_term_ite.pop(num_scopes);
|
||||
m_scoped_substitution.pop(num_scopes);
|
||||
m_formulas.shrink(s.m_formulas_lim);
|
||||
m_qhead = s.m_formulas_lim;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue