mirror of
https://github.com/Z3Prover/z3
synced 2025-04-08 18:31:49 +00:00
parent
461e71017d
commit
a621041308
|
@ -2627,7 +2627,8 @@ namespace z3 {
|
|||
Z3_solver m_solver;
|
||||
void init(Z3_solver s) {
|
||||
m_solver = s;
|
||||
Z3_solver_inc_ref(ctx(), s);
|
||||
if (s)
|
||||
Z3_solver_inc_ref(ctx(), s);
|
||||
}
|
||||
public:
|
||||
struct simple {};
|
||||
|
@ -2636,7 +2637,7 @@ namespace z3 {
|
|||
solver(context & c, simple):object(c) { init(Z3_mk_simple_solver(c)); }
|
||||
solver(context & c, Z3_solver s):object(c) { init(s); }
|
||||
solver(context & c, char const * logic):object(c) { init(Z3_mk_solver_for_logic(c, c.str_symbol(logic))); }
|
||||
solver(context & c, solver const& src, translate): object(c) { init(Z3_solver_translate(src.ctx(), src, c)); }
|
||||
solver(context & c, solver const& src, translate): object(c) { Z3_solver s = Z3_solver_translate(src.ctx(), src, c); check_error(); init(s); }
|
||||
solver(solver const & s):object(s) { init(s.m_solver); }
|
||||
~solver() { Z3_solver_dec_ref(ctx(), m_solver); }
|
||||
operator Z3_solver() const { return m_solver; }
|
||||
|
|
Loading…
Reference in a new issue