mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 00:26:38 +00:00
Avoid broken stack by fix_dl_var_tactic
This commit is contained in:
parent
749ea6c67c
commit
3656a26f18
1 changed files with 5 additions and 3 deletions
|
@ -35,7 +35,7 @@ class fix_dl_var_tactic : public tactic {
|
|||
struct failed {};
|
||||
ast_manager & m;
|
||||
arith_util & m_util;
|
||||
expr_fast_mark1 * m_visited;
|
||||
expr_fast_mark1 * m_visited = nullptr;
|
||||
ptr_vector<expr> m_todo;
|
||||
obj_map<app, unsigned> m_occs;
|
||||
obj_map<app, unsigned> m_non_nested_occs;
|
||||
|
@ -214,8 +214,10 @@ class fix_dl_var_tactic : public tactic {
|
|||
|
||||
app * operator()(goal const & g) {
|
||||
try {
|
||||
expr_fast_mark1 visited;
|
||||
m_visited = &visited;
|
||||
if (m_visited != nullptr) {
|
||||
dealloc(m_visited);
|
||||
}
|
||||
m_visited = alloc(expr_fast_mark1);
|
||||
unsigned sz = g.size();
|
||||
for (unsigned i = 0; i < sz; i++) {
|
||||
process(g.form(i));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue