mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 16:45:31 +00:00
add defensive double-non-concat check in theory_str::simplify_concat_equality()
This commit is contained in:
parent
91c336d7ee
commit
2c91f388df
1 changed files with 5 additions and 2 deletions
|
@ -2317,10 +2317,13 @@ void theory_str::simplify_concat_equality(expr * nn1, expr * nn2) {
|
|||
simplify_parent(new_nn1, new_nn2);
|
||||
}
|
||||
return;
|
||||
} else if (!n1IsConcat && !n2IsConcat) {
|
||||
// normally this should never happen, because group_terms_by_eqc() should have pre-simplified
|
||||
// as much as possible. however, we make a defensive check here just in case
|
||||
TRACE("t_str_detail", tout << "WARNING: nn1_new and nn2_new both simplify to non-concat terms" << std::endl;);
|
||||
return;
|
||||
}
|
||||
|
||||
// TODO what happens if BOTH of these are simplified into non-concat terms?
|
||||
|
||||
expr * v1_arg0 = a_new_nn1->get_arg(0);
|
||||
expr * v1_arg1 = a_new_nn1->get_arg(1);
|
||||
expr * v2_arg0 = a_new_nn2->get_arg(0);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue