RFR (S) 8028553: The JVM should not throw VerifyError when 'overriding' a static final method in a superclass.

Lois Foltan lois.foltan at oracle.com
Thu Jan 23 12:59:00 PST 2014


On 1/23/2014 3:32 PM, harold seigel wrote:
> Hi,
>
> Please review this updated webrev for bug 8028553.  The updated webrev 
> has the same code changes but now includes a test case (written by Lois).

Hi Harold,
Rereviewed, looks good.  Two minor comments about the test case.

     - I realized it actually does not need the "import 
java.lang.invoke.*;" statement, but of course check on this prior to 
removing.
     - And your comment within the test states that class FinalStatic 
extends class B, which it does not.

Again these are minor, please don't feel like you have to resend an 
updated webrev.

Thanks,
Lois

>
> Updated webrev: 
> http://cr.openjdk.java.net/~hseigel/bug_8028553_jdk9.1/ 
> <http://cr.openjdk.java.net/%7Ehseigel/bug_8028553_jdk9.1/>
>
> Thanks, Harold
>
> On 1/21/2014 9:17 AM, harold seigel wrote:
>> Hi,
>>
>> Please review this small fix for bug JDK-8028553.  The fix ensures 
>> that a final method is not static before issuing a VerifyError if 
>> another method appears to override the final method.
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8028553
>> Open webrev: http://cr.openjdk.java.net/~hseigel/bug_8028553_jdk9/ 
>> <http://cr.openjdk.java.net/%7Ehseigel/bug_8028553_jdk9/>
>>
>> The fix was tested with the JCK lang and vm tests, the default method 
>> tests, the UTE verifier, quick and mlvm tests, the JTREG hotspot 
>> tests, and a test that reproduced the problem.
>>
>> Thanks! Harold
>



More information about the hotspot-runtime-dev mailing list