mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 16:45:31 +00:00
fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
9eb6f97e6b
commit
46252b669c
3 changed files with 13 additions and 6 deletions
|
@ -52,8 +52,7 @@ namespace sls {
|
|||
m_plugins.set(p->fid(), p);
|
||||
}
|
||||
|
||||
void context::ensure_plugin(expr* e) {
|
||||
auto fid = get_fid(e);
|
||||
void context::ensure_plugin(family_id fid) {
|
||||
if (m_plugins.get(fid, nullptr))
|
||||
return;
|
||||
else if (fid == arith_family_id)
|
||||
|
@ -67,9 +66,14 @@ namespace sls {
|
|||
else if (fid == array_util(m).get_family_id())
|
||||
register_plugin(alloc(array_plugin, *this));
|
||||
else
|
||||
verbose_stream() << "did not find plugin for " << mk_bounded_pp(e, m) << "\n";
|
||||
|
||||
// add arrays and bv dynamically too.
|
||||
verbose_stream() << "did not find plugin for " << fid << "\n";
|
||||
}
|
||||
|
||||
void context::ensure_plugin(expr* e) {
|
||||
auto fid = get_fid(e);
|
||||
ensure_plugin(fid);
|
||||
fid = e->get_sort()->get_family_id();
|
||||
ensure_plugin(fid);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -136,6 +136,7 @@ namespace sls {
|
|||
void repair_literals();
|
||||
|
||||
void ensure_plugin(expr* e);
|
||||
void ensure_plugin(family_id fid);
|
||||
family_id get_fid(expr* e) const;
|
||||
|
||||
|
||||
|
|
|
@ -24,6 +24,7 @@ Todo:
|
|||
#include "ast/sls/sls_euf_plugin.h"
|
||||
#include "ast/ast_ll_pp.h"
|
||||
#include "ast/ast_pp.h"
|
||||
#include "params/sls_params.hpp"
|
||||
|
||||
|
||||
namespace sls {
|
||||
|
@ -37,7 +38,8 @@ namespace sls {
|
|||
euf_plugin::~euf_plugin() {}
|
||||
|
||||
void euf_plugin::initialize() {
|
||||
m_incremental = ctx.get_params().get_bool("euf_incremental", m_incremental);
|
||||
sls_params sp(ctx.get_params());
|
||||
m_incremental = sp.euf_incremental();
|
||||
IF_VERBOSE(2, verbose_stream() << "sls.euf: incremental " << m_incremental << "\n");
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue