diff options
author | Andres Noetzli <andres.noetzli@gmail.com> | 2020-08-19 10:12:34 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-19 10:12:34 -0700 |
commit | 466520464a8ed862c3a323bb2fbcc92332d9384b (patch) | |
tree | 76bcb32dd61b2b00c047bd36a426f423d525ff08 /src/theory/strings/term_registry.cpp | |
parent | 1c67e4cc188b4812cedb614e6e998ea944ddb320 (diff) |
Require `--strings-exp` when using `str.substr` (#4916)
Fixes #4915. Previously, `str.substr` did not require `--strings-exp`.
However, when `--strings-exp` is not active, we do not send terms to the
extended solver for registration, which meant that `str.substr` was
never reduced. This commit adds `str.substr` to the operators that
require `--strings-exp`.
Diffstat (limited to 'src/theory/strings/term_registry.cpp')
-rw-r--r-- | src/theory/strings/term_registry.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/theory/strings/term_registry.cpp b/src/theory/strings/term_registry.cpp index 71b45915f..353e89668 100644 --- a/src/theory/strings/term_registry.cpp +++ b/src/theory/strings/term_registry.cpp @@ -136,7 +136,7 @@ void TermRegistry::preRegisterTerm(TNode n) if (!options::stringExp()) { if (k == STRING_STRIDOF || k == STRING_ITOS || k == STRING_STOI - || k == STRING_STRREPL || k == STRING_STRREPLALL + || k == STRING_STRREPL || k == STRING_SUBSTR || k == STRING_STRREPLALL || k == STRING_REPLACE_RE || k == STRING_REPLACE_RE_ALL || k == STRING_STRCTN || k == STRING_LEQ || k == STRING_TOLOWER || k == STRING_TOUPPER || k == STRING_REV || k == STRING_UPDATE) |