[code-reflection] RFR: BytecodeLift directly calculating local variables + related BytecodeGenerator fixes [v4]
Paul Sandoz
psandoz at openjdk.org
Mon Aug 26 15:50:18 UTC 2024
On Mon, 26 Aug 2024 08:16:16 GMT, Adam Sotona <asotona at openjdk.org> wrote:
>> src/java.base/share/classes/java/lang/reflect/code/bytecode/BytecodeLift.java line 235:
>>
>>> 233: case ITEM_DOUBLE -> params.add(JavaType.DOUBLE);
>>> 234: case ITEM_LONG -> params.add(JavaType.LONG);
>>> 235: case ITEM_NULL -> params.add(JavaType.wildcard());
>>
>> That's a curious change, can you explain why you did that?
>
> I did this purely for debugging purposes. It is hard to differentiate if a variable has J_L_OBJECT type intentionally or as a result of a bug in the merge process of the lift.
> I can revert it if needed.
It would be odd for that unbounded wildcard type to appear in the model e.g., for `Object o = null`, can it? I recommend hiding it behind a debug system property
-------------
PR Review Comment: https://git.openjdk.org/babylon/pull/218#discussion_r1731446285
More information about the babylon-dev
mailing list