3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-25 01:55:32 +00:00

remove a few more copy constructors, though still not enough to enable the assertion in vector

I give up for now; there are too many copies left for little return..
This commit is contained in:
Nuno Lopes 2020-06-03 20:30:21 +01:00
parent e2b2b7f82e
commit e844aef896
17 changed files with 44 additions and 95 deletions

View file

@ -320,7 +320,7 @@ namespace dd {
public:
pdd(pdd_manager& pm): root(0), m(pm) { SASSERT(is_zero()); }
pdd(pdd const& other): root(other.root), m(other.m) { m.inc_ref(root); }
pdd(pdd && other): root(0), m(other.m) { std::swap(root, other.root); }
pdd(pdd && other) noexcept : root(0), m(other.m) { std::swap(root, other.root); }
pdd& operator=(pdd const& other);
~pdd() { m.dec_ref(root); }
pdd lo() const { return pdd(m.lo(root), m); }

View file

@ -35,19 +35,6 @@ public:
m_value(v), m_index(i), m_other(other) {
}
indexed_value(const indexed_value & iv) {
m_value = iv.m_value;
m_index = iv.m_index;
m_other = iv.m_other;
}
indexed_value & operator=(const indexed_value & right_side) {
m_value = right_side.m_value;
m_index = right_side.m_index;
m_other = right_side.m_other;
return *this;
}
const T & value() const {
return m_value;
}

View file

@ -144,8 +144,6 @@ struct numeric_pair {
explicit numeric_pair(const X & n) : x(n), y(0) {
}
numeric_pair(const numeric_pair<T> & n) : x(n.x), y(n.y) {}
template <typename X, typename Y>
numeric_pair(X xp, Y yp) : x(convert_struct<T, X>::convert(xp)), y(convert_struct<T, Y>::convert(yp)) {}

View file

@ -67,7 +67,6 @@ namespace opt {
struct def {
def(): m_div(1) {}
def(row const& r, unsigned x);
def(def const& other): m_vars(other.m_vars), m_coeff(other.m_coeff), m_div(other.m_div) {}
vector<var> m_vars;
rational m_coeff;
rational m_div;