3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-07-15 03:25:43 +00:00

fix propagation of failure

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2026-07-03 11:41:37 -07:00
parent f30650b4b4
commit 1c11526d64
2 changed files with 3 additions and 4 deletions

View file

@ -90,7 +90,7 @@ struct split_set::iterator::imp {
next();
}
if (b_it.failed() || a_it.failed())
parent().m_failure = true;
parent().set_failure();
}
};
@ -206,8 +206,6 @@ struct split_set::iterator::imp {
}
void consume() override {
if (at_end())
return;
while (!parent().has_split() && !at_end() && !a_it.failed() && !b_it.failed()) {
if (a_it == a_end) {
auto [p, q] = *b_it;
@ -335,6 +333,7 @@ struct split_set::iterator::imp {
}
void unfold(expr* r) {
TRACE(seq, tout << "unfold " << mk_pp(r, m) << "\n");
SASSERT(seq.is_re(r));
if (re.is_empty(r))
return;

View file

@ -523,7 +523,7 @@ namespace smt {
if (re().is_empty(q)) {
enode_pair_vector eqs;
literal_vector lits;
lits.push_back(~lit);
lits.push_back(lit);
th.set_conflict(eqs, lits);
return true;
}