RFR (S) JDK-8028741: Interface Method Resolution should skip static and non-public methods in j.l.Object

Karen Kinnear karen.kinnear at oracle.com
Tue Dec 10 10:59:23 PST 2013


Looks good Lois.

Thank you for the testing and the submitted test.

thanks,
Karen

On Dec 9, 2013, at 7:40 PM, 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
> 



More information about the hotspot-runtime-dev mailing list