mirror of
https://github.com/Z3Prover/z3
synced 2025-04-24 09:35:32 +00:00
address divergence in the case of shared theory symbols. Codeplex issue 147, thanks to George Karpenkov
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
commit
08cb8b8de8
74 changed files with 1280 additions and 896 deletions
|
@ -513,3 +513,26 @@ void interpolation_options_struct::apply(iz3base &b){
|
|||
b.set_option((*it).first,(*it).second);
|
||||
}
|
||||
|
||||
// On linux and mac, unlimit stack space so we get recursion
|
||||
|
||||
#if defined(_WINDOWS) || defined(_CYGWIN)
|
||||
|
||||
#else
|
||||
|
||||
#include <sys/time.h>
|
||||
#include <sys/resource.h>
|
||||
|
||||
class iz3stack_unlimiter {
|
||||
public:
|
||||
iz3stack_unlimiter() {
|
||||
struct rlimit rl = {RLIM_INFINITY, RLIM_INFINITY};
|
||||
setrlimit(RLIMIT_STACK, &rl);
|
||||
// nothing to be done if above fails
|
||||
}
|
||||
};
|
||||
|
||||
// initializing this will unlimit stack
|
||||
|
||||
iz3stack_unlimiter the_iz3stack_unlimiter;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -2,4 +2,5 @@ def_module_params('interp',
|
|||
description='interpolation parameters',
|
||||
export=True,
|
||||
params=(('profile', BOOL, False, '(INTERP) profile interpolation'),
|
||||
('check', BOOL, False, '(INTERP) check interpolants'),
|
||||
))
|
||||
|
|
|
@ -3078,6 +3078,11 @@ public:
|
|||
m().dec_ref(add_pos);
|
||||
m().dec_ref(rewrite_A);
|
||||
m().dec_ref(rewrite_B);
|
||||
m().dec_ref(normal_step);
|
||||
m().dec_ref(normal_chain);
|
||||
m().dec_ref(normal);
|
||||
m().dec_ref(sforall);
|
||||
m().dec_ref(sexists);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue