mirror of
https://github.com/Z3Prover/z3
synced 2025-04-10 19:27:06 +00:00
fix #5304
This commit is contained in:
parent
15916091d1
commit
56b47fa956
|
@ -134,8 +134,9 @@ expr * array_factory::get_fresh_value(sort * s) {
|
|||
sort * range = get_array_range(s);
|
||||
expr* range_val = nullptr;
|
||||
|
||||
if (!m_recursive_fresh) {
|
||||
flet<bool> _recursive(m_recursive_fresh, true);
|
||||
if (!m_ranges.contains(range)) {
|
||||
ptr_vector<sort>::scoped_stack _s(m_ranges);
|
||||
m_ranges.push_back(range);
|
||||
range_val = m_model.get_fresh_value(range);
|
||||
if (range_val != nullptr) {
|
||||
// easy case
|
||||
|
|
|
@ -28,7 +28,7 @@ class array_factory : public struct_factory {
|
|||
expr * mk_array_interp(sort * s, func_interp * & fi);
|
||||
void get_some_args_for(sort * s, ptr_buffer<expr> & args);
|
||||
bool mk_two_diff_values_for(sort * s);
|
||||
bool m_recursive_fresh { false };
|
||||
ptr_vector<sort> m_ranges;
|
||||
public:
|
||||
array_factory(ast_manager & m, model_core & md);
|
||||
|
||||
|
|
Loading…
Reference in a new issue