Objects of type Block were already unsafe to copy (or move). The class contains
raw pointers that are deleted in the destructor. So any attempt to copy an
object of this type would have eventually caused a use-after-free and/or a
double free. This change makes the situation more explicit by teaching the
compiler it is unsafe to copy or move objects of this type. If there is code that
implicitly does this, it will now be rejected at compile time.
double weight;
double wposn;
Block(Variable *v=nullptr);
+ Block(const Block &) = delete;
~Block();
Constraint* findMinLM();
Constraint* findMinLMBetween(Variable* lv, Variable* rv);