RFR: 8307818: Convert Indify tool to Classfile API [v10]

Adam Sotona asotona at openjdk.org
Mon Jun 17 08:09:19 UTC 2024


On Fri, 24 May 2024 17:12:24 GMT, Oussama Louati <duke at openjdk.org> wrote:

>> test/jdk/java/lang/invoke/indify/Indify.java line 578:
>> 
>>> 576:                         classTransform = ClassTransform.transformingMethodBodies(filter, codeTransform);
>>> 577:                         classModel = of().parse(
>>> 578:                              of().transform(classModel, classTransform));
>> 
>> What this transform (in the middle of instructions iteration) does?
>
> It updates the current classfile so when moving to a next action we avoid this runtime error:
> 
>> STATUS:Failed.`main' threw exception: java.lang.VerifyError: Bad type on operand stack

Injected transform to avoid verify error, that seems to me conceptually wrong.
What is the root cause of the verify error and how the transform suppose to fix it?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/18841#discussion_r1642372748


More information about the core-libs-dev mailing list