3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-22 05:43:39 +00:00

nnf: remove ast incref

This commit is contained in:
Nuno Lopes 2017-10-15 01:41:07 +01:00
parent 6c2d0394ac
commit 29acec672f

View file

@ -207,8 +207,8 @@ struct nnf::imp {
unsigned m_new_child:1; unsigned m_new_child:1;
unsigned m_cache_result:1; unsigned m_cache_result:1;
unsigned m_spos; // top of the result stack, when the frame was created. unsigned m_spos; // top of the result stack, when the frame was created.
frame(expr_ref& n, bool pol, bool in_q, bool cache_res, unsigned spos): frame(expr_ref&& n, bool pol, bool in_q, bool cache_res, unsigned spos):
m_curr(n), m_curr(std::move(n)),
m_i(0), m_i(0),
m_pol(pol), m_pol(pol),
m_in_q(in_q), m_in_q(in_q),
@ -324,8 +324,7 @@ struct nnf::imp {
} }
void push_frame(expr * t, bool pol, bool in_q, bool cache_res) { void push_frame(expr * t, bool pol, bool in_q, bool cache_res) {
expr_ref tr(t, m()); m_frame_stack.push_back(frame({ t, m() }, pol, in_q, cache_res, m_result_stack.size()));
m_frame_stack.push_back(frame(tr, pol, in_q, cache_res, m_result_stack.size()));
} }
static unsigned get_cache_idx(bool pol, bool in_q) { static unsigned get_cache_idx(bool pol, bool in_q) {