mirror of
https://github.com/Z3Prover/z3
synced 2026-06-29 11:58:51 +00:00
change back coalesce_chars to true, a regression
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
eab5ff1eff
commit
596f158e44
2 changed files with 4 additions and 1 deletions
|
|
@ -470,6 +470,7 @@ br_status seq_rewriter::mk_app_core(func_decl * f, unsigned num_args, expr * con
|
|||
*/
|
||||
br_status seq_rewriter::mk_seq_unit(expr* e, expr_ref& result) {
|
||||
unsigned ch;
|
||||
verbose_stream() << "mk_seq_unit: " << mk_ismt2_pp(e, m()) << " " << m_coalesce_chars << "\n";
|
||||
// specifically we want (_ BitVector 8)
|
||||
if (m_util.is_const_char(e, ch) && m_coalesce_chars) {
|
||||
// convert to string constant
|
||||
|
|
@ -500,6 +501,8 @@ br_status seq_rewriter::mk_seq_concat(expr* a, expr* b, expr_ref& result) {
|
|||
expr* c, *d;
|
||||
bool isc1 = str().is_string(a, s1) && m_coalesce_chars;
|
||||
bool isc2 = str().is_string(b, s2) && m_coalesce_chars;
|
||||
|
||||
verbose_stream() << "mk_seq_concat: a = " << mk_ismt2_pp(a, m()) << ", b = " << mk_ismt2_pp(b, m()) << "\n";
|
||||
if (isc1 && isc2) {
|
||||
result = str().mk_string(s1 + s2);
|
||||
return BR_DONE;
|
||||
|
|
|
|||
|
|
@ -139,7 +139,7 @@ class seq_rewriter {
|
|||
// re2automaton m_re2aut;
|
||||
op_cache m_op_cache;
|
||||
expr_ref_vector m_es, m_lhs, m_rhs;
|
||||
bool m_coalesce_chars = false;
|
||||
bool m_coalesce_chars = true;
|
||||
bool m_in_bisim { false };
|
||||
unsigned m_re_deriv_depth { 0 };
|
||||
static const unsigned m_max_re_deriv_depth = 512;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue