mirror of
https://github.com/Z3Prover/z3
synced 2025-06-29 17:38:45 +00:00
throw exceptions when internalizing expressions with free variables, issue #663
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
5d5004193b
commit
c2f9d35d59
2 changed files with 21 additions and 7 deletions
|
@ -321,10 +321,10 @@ namespace smt {
|
|||
void context::internalize(expr * n, bool gate_ctx) {
|
||||
TRACE("internalize", tout << "internalizing:\n" << mk_pp(n, m_manager) << "\n";);
|
||||
TRACE("internalize_bug", tout << "internalizing:\n" << mk_bounded_pp(n, m_manager) << "\n";);
|
||||
if (is_var(n)) {
|
||||
throw default_exception("Formulas should not contain unbound variables");
|
||||
}
|
||||
if (m_manager.is_bool(n)) {
|
||||
if (is_var(n)) {
|
||||
throw default_exception("Formulas should not contain unbound variables");
|
||||
}
|
||||
SASSERT(is_quantifier(n) || is_app(n));
|
||||
internalize_formula(n, gate_ctx);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue