diff options
Diffstat (limited to 'src/theory/strings/solver_state.cpp')
-rw-r--r-- | src/theory/strings/solver_state.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/theory/strings/solver_state.cpp b/src/theory/strings/solver_state.cpp index 970b832a9..a554ac595 100644 --- a/src/theory/strings/solver_state.cpp +++ b/src/theory/strings/solver_state.cpp @@ -118,10 +118,12 @@ void SolverState::eqNotifyNewClass(TNode t) } else if (t.isConst()) { - EqcInfo* ei = getOrMakeEqcInfo(t); - ei->d_prefixC = t; - ei->d_suffixC = t; - return; + if (t.getType().isStringLike()) + { + EqcInfo* ei = getOrMakeEqcInfo(t); + ei->d_prefixC = t; + ei->d_suffixC = t; + } } else if (k == STRING_CONCAT) { @@ -134,6 +136,7 @@ void SolverState::eqNotifyMerge(TNode t1, TNode t2) EqcInfo* e2 = getOrMakeEqcInfo(t2, false); if (e2) { + Assert(t1.getType().isStringLike()); EqcInfo* e1 = getOrMakeEqcInfo(t1); // add information from e2 to e1 if (!e2->d_lengthTerm.get().isNull()) |