-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
P4
-
None
-
Affects Version/s: repo-babylon
-
Component/s: core-libs
BytecodeGenerator throws UnsupportedOperationException for JavaOp.InvokeOp when invoke kind is SUPER.
We cannot generate an invokespecial as it will result in a verify error, since the owner is not assignable to generated hidden class.
Construct method handle via lookup.findSpecial using the lookup's class as the specialCaller and add that method handle to the to be defined hidden class's constant data. Use and ldc+constant dynamic to access the class data, extract the method handle and then invoke it.
We cannot generate an invokespecial as it will result in a verify error, since the owner is not assignable to generated hidden class.
Construct method handle via lookup.findSpecial using the lookup's class as the specialCaller and add that method handle to the to be defined hidden class's constant data. Use and ldc+constant dynamic to access the class data, extract the method handle and then invoke it.
- links to
-
Review(code-reflection)
openjdk/babylon/752