3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-22 16:45:31 +00:00

ensure there are enough variables

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2012-11-25 16:53:13 -08:00
parent 93ad91d2f9
commit 008fc648c1

View file

@ -338,7 +338,7 @@ namespace datalog {
expr_ref context::bind_variables(expr* fml, bool is_forall) {
expr_ref result(m);
app_ref_vector const& vars = m_vars;
app_ref_vector & vars = m_vars;
if (vars.empty()) {
result = fml;
}
@ -352,6 +352,9 @@ namespace datalog {
else {
svector<symbol> names;
for (unsigned i = 0; i < sorts.size(); ++i) {
if (vars.size() == i) {
vars.push_back(m.mk_fresh_const("x", m.mk_bool_sort()));
}
if (!sorts[i]) {
sorts[i] = vars[i]->get_decl()->get_range();
}