mirror of
https://github.com/Z3Prover/z3
synced 2025-04-15 05:18:44 +00:00
parent
57d430b3fd
commit
8290cfadcc
|
@ -194,12 +194,16 @@ public:
|
|||
|
||||
init_reason_unknown();
|
||||
m_internalized_converted = false;
|
||||
bool reason_set = false;
|
||||
try {
|
||||
// IF_VERBOSE(0, m_solver.display(verbose_stream()));
|
||||
r = m_solver.check(m_asms.size(), m_asms.c_ptr());
|
||||
}
|
||||
catch (z3_exception& ex) {
|
||||
IF_VERBOSE(10, verbose_stream() << "exception: " << ex.msg() << "\n";);
|
||||
reason_set = true;
|
||||
std::string msg = std::string("(sat.giveup ") + ex.msg() + std::string(")");
|
||||
set_reason_unknown(msg.c_str());
|
||||
r = l_undef;
|
||||
}
|
||||
switch (r) {
|
||||
|
@ -215,7 +219,9 @@ public:
|
|||
}
|
||||
break;
|
||||
default:
|
||||
set_reason_unknown(m_solver.get_reason_unknown());
|
||||
if (!reason_set) {
|
||||
set_reason_unknown(m_solver.get_reason_unknown());
|
||||
}
|
||||
break;
|
||||
}
|
||||
return r;
|
||||
|
@ -604,6 +610,7 @@ private:
|
|||
}
|
||||
catch (tactic_exception & ex) {
|
||||
IF_VERBOSE(0, verbose_stream() << "exception in tactic " << ex.msg() << "\n";);
|
||||
set_reason_unknown(ex.msg());
|
||||
TRACE("sat", tout << "exception: " << ex.msg() << "\n";);
|
||||
m_preprocess = nullptr;
|
||||
m_bb_rewriter = nullptr;
|
||||
|
|
|
@ -271,6 +271,8 @@ class parallel_tactic : public tactic {
|
|||
std::string r = get_solver().reason_unknown();
|
||||
std::string inc("(incomplete");
|
||||
m_giveup |= r.compare(0, inc.size(), inc) == 0;
|
||||
inc = "(sat.giveup";
|
||||
m_giveup |= r.compare(0, inc.size(), inc) == 0;
|
||||
return m_giveup;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue