3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-09-04 09:07:40 +00:00

fix stack overflow regression in bool_rewriter

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2024-12-28 18:21:59 -08:00
parent 3526d03cca
commit 6ea68310c9
3 changed files with 17 additions and 12 deletions

View file

@ -67,7 +67,9 @@ namespace sls {
bvect m_best_value;
expr* m_best_expr = nullptr;
bool m_rescore = true;
ptr_vector<expr> m_vars;
ptr_vector<expr> m_empty_vars;
obj_map<expr, bool_info> m_bool_info;
expr_mark m_is_root;
void init_updates();
@ -84,11 +86,12 @@ namespace sls {
void rescore();
obj_map<expr, bool_info> m_bool_info;
unsigned get_weight(expr* e);
void inc_weight(expr* e);
void dec_weight(expr* e);
void recalibrate_weights();
bool is_root(expr* e) { return m_is_root.is_marked(e); }
void try_set(expr* u, bvect const& new_value);
void add_updates(expr* u);