mirror of
https://github.com/Z3Prover/z3
synced 2025-04-06 17:44:08 +00:00
some fixes to backtracking restore points in new solver
This commit is contained in:
parent
dd1ca8f6bd
commit
73a652cf4b
|
@ -55,7 +55,7 @@ public:
|
|||
void push() { m_trail.push_scope(); }
|
||||
void pop(unsigned n) { m_trail.pop_scope(n); }
|
||||
unsigned qhead() const { return m_qhead; }
|
||||
void advance_qhead() { m_qhead = size(); }
|
||||
void advance_qhead() { if (m_trail.get_num_scopes() > 0) m_trail.push(value_trail(m_qhead)); m_qhead = size(); }
|
||||
unsigned num_exprs() {
|
||||
expr_fast_mark1 visited;
|
||||
unsigned r = 0;
|
||||
|
|
|
@ -259,6 +259,9 @@ public:
|
|||
m_map.push();
|
||||
m_preprocess_state.push();
|
||||
m_preprocess.push();
|
||||
m_trail.push(restore_vector(m_assumptions));
|
||||
m_trail.push(restore_vector(m_fmls));
|
||||
m_trail.push(value_trail(m_mc_size));
|
||||
}
|
||||
|
||||
void pop(unsigned n) override {
|
||||
|
@ -618,9 +621,6 @@ private:
|
|||
return l_true;
|
||||
|
||||
unsigned qhead = m_preprocess_state.qhead();
|
||||
m_trail.push(restore_vector(m_assumptions));
|
||||
m_trail.push(restore_vector(m_fmls));
|
||||
m_trail.push(value_trail(m_mc_size));
|
||||
TRACE("sat", tout << "qhead " << qhead << "\n");
|
||||
|
||||
m_internalized_converted = false;
|
||||
|
|
Loading…
Reference in a new issue