Modifying Instruction Class

I’m attempting to add a new member variable to the Instruction class but I get assertion errors when I run lli.

All I add is the following line to the private portion of the Instruction class definition.

bool b;

The error usually is:

lli: /development/Contracts/DOVE/src/c/llvm/include/llvm/Type.h:329: void llvm::Type::dropRef() const: Assertion `isAbstract() && “Cannot drop a reference to a non-abstract type!”’ failed.
lli((anonymous namespace)::PrintStackTrace()+0x1a)[0x848a04a]
/lib/tls/libc.so.6(abort+0x129)[0x5a1319]
/lib/tls/libc.so.6(__assert_fail+0x101)[0x598f41]
lli[0x8438796]
Aborted

I’m lost on where this error is coming from or what it means. Is there anyway of adding extra member variables to the Instruction class?

It is impossible to say without more detail, but it sounds like you recompiled some code that uses the header, but not all. If you change a header, you have to recompile and relink ALL code that uses it.

-Chris