mirror of
https://github.com/Z3Prover/z3
synced 2025-08-10 05:00:51 +00:00
address inconsistent states encountered when cancelling, #1197
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
19bb55e396
commit
00742566fb
4 changed files with 99 additions and 97 deletions
|
@ -2106,6 +2106,7 @@ namespace smt {
|
|||
|
||||
template<typename Ext>
|
||||
void theory_arith<Ext>::mutate_assignment() {
|
||||
SASSERT(m_to_patch.empty());
|
||||
remove_fixed_vars_from_base();
|
||||
int num_vars = get_num_vars();
|
||||
m_var_value_table.reset();
|
||||
|
@ -2131,12 +2132,9 @@ namespace smt {
|
|||
}
|
||||
if (candidates.empty())
|
||||
return;
|
||||
typename sbuffer<theory_var>::iterator it = candidates.begin();
|
||||
typename sbuffer<theory_var>::iterator end = candidates.end();
|
||||
m_tmp_var_set.reset();
|
||||
m_tmp_var_set2.reset();
|
||||
for (; it != end; ++it) {
|
||||
theory_var v = *it;
|
||||
for (theory_var v : candidates) {
|
||||
SASSERT(!is_fixed(v));
|
||||
if (is_base(v)) {
|
||||
row & r = m_rows[get_var_row(v)];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue