mirror of
https://github.com/Z3Prover/z3
synced 2025-04-12 04:03:39 +00:00
fix crash when accessing bool-info vars, reported by Clemens Eisenhofer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
f574950237
commit
09e84e0448
|
@ -31,8 +31,10 @@ namespace sls {
|
||||||
typename arith_lookahead<num_t>::bool_info& arith_lookahead<num_t>::get_bool_info(expr* e) {
|
typename arith_lookahead<num_t>::bool_info& arith_lookahead<num_t>::get_bool_info(expr* e) {
|
||||||
unsigned id = e->get_id();
|
unsigned id = e->get_id();
|
||||||
if (id >= m_bool_info.size())
|
if (id >= m_bool_info.size())
|
||||||
m_bool_info.reserve(id + 1, bool_info(a.m_config.paws_init));
|
m_bool_info.reserve(id + 1);
|
||||||
return m_bool_info[id];
|
if (!m_bool_info[id])
|
||||||
|
m_bool_info.set(id, alloc(bool_info, a.m_config.paws_init));
|
||||||
|
return *m_bool_info[id];
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename num_t>
|
template<typename num_t>
|
||||||
|
|
|
@ -61,7 +61,7 @@ namespace sls {
|
||||||
|
|
||||||
vector<ptr_vector<app>> m_update_stack;
|
vector<ptr_vector<app>> m_update_stack;
|
||||||
expr_mark m_in_update_stack;
|
expr_mark m_in_update_stack;
|
||||||
svector<bool_info> m_bool_info;
|
scoped_ptr_vector<bool_info> m_bool_info;
|
||||||
double m_best_score = 0, m_top_score = 0;
|
double m_best_score = 0, m_top_score = 0;
|
||||||
unsigned m_min_depth = 0, m_max_depth = 0;
|
unsigned m_min_depth = 0, m_max_depth = 0;
|
||||||
num_t m_best_value;
|
num_t m_best_value;
|
||||||
|
|
Loading…
Reference in a new issue