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 13:02:14 PST 2013


On 12/11/2013 12:38 AM, Lois Foltan wrote:
>
> On 12/10/2013 2:25 PM, Leonid Mesnik wrote:
>> 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
>
> Hi Leonid,
> Thank you for the code review!  I will remove the System.exit(1) call 
> prior to committing.
> Lois
>
Thank you for test cleanup.
Leonid
>>
>> 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