3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 01:25:31 +00:00

fix crashes in nlsat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-12-14 17:22:49 -08:00
parent b28e788371
commit ab39f06df7
2 changed files with 8 additions and 5 deletions

View file

@ -734,8 +734,10 @@ namespace nlsat {
void undo_set_updt(interval_set * old_set) {
SASSERT(m_xk != null_var);
var x = m_xk;
m_ism.dec_ref(m_infeasible[x]);
m_infeasible[x] = old_set;
if (x < m_infeasible.size() && m_infeasible[x]) {
m_ism.dec_ref(m_infeasible[x]);
m_infeasible[x] = old_set;
}
}
void undo_new_stage() {
@ -757,7 +759,8 @@ namespace nlsat {
void undo_updt_eq(atom * a) {
SASSERT(m_xk != null_var);
m_var2eq[m_xk] = a;
if (m_var2eq.size() > m_xk)
m_var2eq[m_xk] = a;
}
template<typename Predicate>