3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-10 19:27:06 +00:00

fixing sources for double frees of clauses. #940

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-03-14 19:35:11 -07:00
parent 05c267b8d8
commit 72651e2e98
2 changed files with 5 additions and 2 deletions

View file

@ -188,8 +188,8 @@ namespace sat {
case 1:
TRACE("asymm_branch", tout << "produced unit clause: " << c[0] << "\n";);
s.assign(c[0], justification());
s.del_clause(c);
s.propagate_core(false);
s.del_clause(c);
SASSERT(s.inconsistent() || s.m_qhead == s.m_trail.size());
return false; // check_missed_propagation() may fail, since m_clauses is not in a consistent state.
case 2:

View file

@ -279,7 +279,10 @@ namespace sat {
unsigned sz = c.size();
if (sz == 0) {
s.set_conflict(justification());
return;
for (; it != end; ++it, ++it2) {
*it2 = *it;
}
break;
}
if (sz == 1) {
s.assign(c[0], justification());