on a second thought, force VoidValue to be of VoidType
MODIFY
ir/value.cpp
ir/value.cpp
@@ -12,7 +12,7 @@ static unsigned gbl_fresh_id = 0;
namespace IR {
-VoidValue Value::voidVal(Type::voidTy);
+VoidValue Value::voidVal;
void Value::reset_gbl_id() {
gbl_fresh_id = 0;

MODIFY
ir/value.h
ir/value.h
@@ -68,7 +68,7 @@ public:
class VoidValue final : public Value {
public:
- VoidValue(Type &type) : Value(type, "void") {}
+ VoidValue() : Value(Type::voidTy, "void") {}
void print(std::ostream &os) const override;
StateValue toSMT(State &s) const override;
};

on a second thought, force VoidValue to be of VoidType