Bytecode verification error after instrumentation of constructors (<init>
methods) because of leaking this
#424
Labels
bug
Something isn't working
Currently lincheck omits transformation of
<init>
methods in the transformers chain (seeLincheckClassVisitor::visitMethod
).There is a problem with passing object references to injection methods. This may be observed for instrumentation of
GETFIELD
/PUTFIELD
instructions in constructors:Injections::beforeReadField
function accepts as 1st parameter a reference to the object, on which mentioned instructions are invoked.this
of the class instance being constructed, then passing it as a parameter to any function will causeVerifyError
exception when the jvm will try to load transformed class.The text was updated successfully, but these errors were encountered: