This bug was found by Luke Hutchison,
i independently verify it.
when compiling a record like this:
record Foo(int x, int y) { }
then decompile it using javap -verbose Foo.class, at the end,
you can see that the InnerClasses attribute is generated (it should not), and with weird values.
InnerClasses:
public static final #55= #51 of #53; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles
The bug is reproducible with java 14 or latest java 15.
i independently verify it.
when compiling a record like this:
record Foo(int x, int y) { }
then decompile it using javap -verbose Foo.class, at the end,
you can see that the InnerClasses attribute is generated (it should not), and with weird values.
InnerClasses:
public static final #55= #51 of #53; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles
The bug is reproducible with java 14 or latest java 15.