RFR (S) JDK-8028741: Interface Method Resolution should skip static and non-public methods in j.l.Object
Leonid Mesnik
leonid.mesnik at oracle.com
Tue Dec 10 11:25:55 PST 2013
Lois
It is a bad practice to call System.exit(1) if test fails. It cause
issue in samevm mode. It is better to throw exception.
See more information about failures here:
http://openjdk.java.net/jtreg/faq.html#question7.1
Leonid
On 12/10/2013 04:40 AM, Lois Foltan wrote:
> Please review the following fix:
>
> Webrev:
> http://cr.openjdk.java.net/~lfoltan/bug_jdk8028741/
>
> Fixes both: JDK-8028741: Interface Method Resolution should skip
> static and non-public methods in j.l.Object
> JDK-8028626: invokeinterface selects the static
> Object.registerNatives method
>
> https://bugs.openjdk.java.net/browse/JDK-8028741
> https://bugs.openjdk.java.net/browse/JDK-8028626
>
> Summary of fix:
> Implementation for the JDK 8 JVMS 5.4.3.4 specification change
> requested in JDK-8027581, to
> skip static and non-public methods of java.lang.Object, such as
> clone, finalize and registerNatives,
> for interface method resolution. This fix also removes the
> temporary workaround that was put in
> place for JDK-8026394. The workaround special cased checking for
> java.lang.Object methods
> of name "clone" and "finalize" during interface method
> resolution's interface method accessability
> checking. Since non-public java.lang.Object methods such as clone
> and finalize, are now being ignored
> during method resolution, this temporary work around is no longer
> necessary.
>
> Tests:
> JCK lang & vm - passed
> JDK java/lang & java/util - passed
> vm.quick.testlist - passed
> Hotspot test/* - in progress
> default method tests - passed
>
> Thank you,
> Lois
>
--
Leonid Mesnik
JVM SQE
More information about the hotspot-runtime-dev
mailing list