RFR(S) 8139164: JVM should throw ClassFormatError for non-void methods named <clinit>
Lois Foltan
lois.foltan at oracle.com
Mon Oct 26 13:15:56 UTC 2015
Hi Harold,
I think this looks good. I don't see in any of the tests a test for a
bogus internal method named something other than <clinit> or <init>.
Can you locate one if it exists or add one since your change is now
checking all methods that start with "<", not just ones that are equal
to vmSymbols::object_initializer_name(). Would this case pass for class
files <= 51?
Thanks,
Lois
On 10/26/2015 8:31 AM, harold seigel wrote:
> Hi,
>
> Please review this small change to fix bug 8139164.
>
> Recent proposed JVM-9 Spec changes (JDK-8130682
> <https://bugs.openjdk.java.net/browse/JDK-8130682>) require throwing
> ClassFormatError exceptions for class file versions >= 51 for methods
> named <clinit> that have one or more arguments or are not static.
> This fix implements that change.
>
> Open webrev: http://cr.openjdk.java.net/~hseigel/bug_8139164/
>
> JBS Bug: https://bugs.openjdk.java.net/browse/JDK-8139164
>
> The fix was tested with JCK Lang, VM, and API java_lang tests, the UTE
> quick and split verifier tests, and the hotspot, JDK vm, java/io,
> java/lang, and java/util JTreg tests, and the tests included in this RFR.
>
> Thanks, Harold
More information about the hotspot-runtime-dev
mailing list