3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-14 21:08:46 +00:00
This commit is contained in:
Nikolaj Bjorner 2020-11-12 13:23:34 -08:00
parent d61f30fdc6
commit 7f869e513b

View file

@ -1980,15 +1980,16 @@ model_value_proc * theory_seq::mk_value(enode * n, model_generator & mg) {
seq_value_proc* sv = alloc(seq_value_proc, *this, n, srt);
unsigned end = m_concat.size();
TRACE("seq", tout << mk_pp(e, m) << "\n";);
TRACE("seq", tout << "sequence: " << start << " " << end << " " << mk_pp(e, m) << "\n";);
for (unsigned i = start; i < end; ++i) {
expr* c = m_concat[i];
expr *c1;
TRACE("seq", tout << mk_pp(c, m) << "\n";);
TRACE("seq", tout << "elem: " << mk_pp(c, m) << "\n";);
if (m_util.str.is_unit(c, c1)) {
if (ctx.e_internalized(c1)) {
if (ctx.e_internalized(c1))
sv->add_unit(ctx.get_enode(c1));
}
else if (m.is_value(c1))
sv->add_string(c);
else {
TRACE("seq", tout << "not internalized " << mk_pp(c, m) << "\n";);
}
@ -2005,7 +2006,7 @@ model_value_proc * theory_seq::mk_value(enode * n, model_generator & mg) {
sv->add_string(mk_value(to_app(c)));
}
}
m_concat.shrink(start);
m_concat.shrink(start);
return sv;
}
else {