mirror of
https://github.com/Z3Prover/z3
synced 2025-07-18 02:16:40 +00:00
fail gracefully on interpolation errors
This commit is contained in:
parent
1cf24f7cdc
commit
e6516f549d
5 changed files with 74 additions and 16 deletions
|
@ -562,7 +562,14 @@ namespace Duality {
|
|||
opts.set("weak","1");
|
||||
|
||||
::ast *proof = m_solver->get_proof();
|
||||
iz3interpolate(m(),proof,_assumptions,_parents,_interpolants,_theory,&opts);
|
||||
try {
|
||||
iz3interpolate(m(),proof,_assumptions,_parents,_interpolants,_theory,&opts);
|
||||
}
|
||||
// If there's an interpolation bug, throw a char *
|
||||
// exception so duality can catch it and restart.
|
||||
catch (const interpolation_failure &f) {
|
||||
throw f.msg();
|
||||
}
|
||||
|
||||
std::vector<expr> linearized_interpolants(_interpolants.size());
|
||||
for(unsigned i = 0; i < _interpolants.size(); i++)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue