3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-14 21:08:46 +00:00

fixing an assert caused by previous change in theory_array_base.cpp

This commit is contained in:
Ken McMillan 2014-10-01 18:15:33 -07:00
parent 301cb51bbb
commit c5f17df310

View file

@ -433,7 +433,8 @@ namespace smt {
enode * n = get_enode(i); enode * n = get_enode(i);
if (ctx.is_relevant(n)) { if (ctx.is_relevant(n)) {
enode * r = n->get_root(); enode * r = n->get_root();
if (!r->is_marked() && is_array_sort(r) && ctx.is_shared(r)) { if (!r->is_marked()){
if(is_array_sort(r) && ctx.is_shared(r)) {
TRACE("array_shared", tout << "new shared var: #" << r->get_owner_id() << "\n";); TRACE("array_shared", tout << "new shared var: #" << r->get_owner_id() << "\n";);
theory_var r_th_var = r->get_th_var(get_id()); theory_var r_th_var = r->get_th_var(get_id());
SASSERT(r_th_var != null_theory_var); SASSERT(r_th_var != null_theory_var);
@ -443,6 +444,7 @@ namespace smt {
to_unmark.push_back(r); to_unmark.push_back(r);
} }
} }
}
unmark_enodes(to_unmark.size(), to_unmark.c_ptr()); unmark_enodes(to_unmark.size(), to_unmark.c_ptr());
} }
#endif #endif