mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 16:45:31 +00:00
fixups wip
This commit is contained in:
parent
847a5fc1f8
commit
8aa6fee0af
1 changed files with 5 additions and 0 deletions
|
@ -141,6 +141,10 @@ void theory_str::assert_axiom(expr * e) {
|
|||
literal lit(ctx.get_literal(e));
|
||||
ctx.mark_as_relevant(lit);
|
||||
ctx.mk_th_axiom(get_id(), 1, &lit);
|
||||
|
||||
// crash/error avoidance: add all axioms to the trail
|
||||
m_trail.push_back(e);
|
||||
|
||||
TRACE("t_str_detail", tout << "done asserting " << mk_ismt2_pp(e, get_manager()) << std::endl;);
|
||||
}
|
||||
|
||||
|
@ -4622,6 +4626,7 @@ void theory_str::pop_scope_eh(unsigned num_scopes) {
|
|||
unsigned count = 0;
|
||||
std::set<expr*> vars = it->second;
|
||||
for (std::set<expr*>::iterator var_it = vars.begin(); var_it != vars.end(); ++var_it) {
|
||||
TRACE("t_str_detail", tout << "clean up variable " << mk_pp(*var_it, get_manager()) << std::endl;);
|
||||
variable_set.erase(*var_it);
|
||||
internal_variable_set.erase(*var_it);
|
||||
regex_variable_set.erase(*var_it);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue