RFR(S) 8026894: Improve VerifyError message about overriding a final method

Zhengyu Gu zhengyu.gu at oracle.com
Thu Jul 3 14:13:44 UTC 2014


Good to me.

-Zhengyu

On 6/30/2014 11:09 AM, harold seigel wrote:
> Hi Lois,
>
> Thanks for the review.  I'll move the test into test/runtime/verifier.
>
> The actual check for overriding a final method is done in 
> classFileParser.cpp, regardless of whether or not the verifier is 
> enabled.
>
> Thanks, Harold
>
> On 6/30/2014 9:47 AM, Lois Foltan wrote:
>> Hi Harold,
>>
>> src/share/vm/classFileParser.cpp
>>   - No comments, looks good.
>>
>> test/runtime/OverrideMsg/OverriderMsg.java
>>   - instead of creating a new directory, can we put this test in 
>> test/runtime/verifier?
>>   - If you want to ensure that this test always runs with the 
>> verifier turned on, I think
>>     you should specify "-verify" as well in the call to 
>> createJavaProcessBuilder().
>>
>> Thanks,
>> Lois
>>
>> On 6/30/2014 9:29 AM, harold seigel wrote:
>>> Hi,
>>>
>>> Please review this small enhancement for bug 8026894.  This change 
>>> adds the class name to the Exception message when a method in a 
>>> subclass overrides a final method in a super class. Here's a sample 
>>> old message, followed by the improved message:
>>>
>>>    Exception in thread "main" java.lang.VerifyError: class Overrider
>>>    overrides final method m.(Ljava/lang/String;)V
>>>
>>>    Exception in thread "main" java.lang.VerifyError: class Overrider
>>>    overrides final method pkg.HasFinal.m(Ljava/lang/String;)V
>>>
>>>
>>> Open webrev:  http://cr.openjdk.java.net/~hseigel/bug_8026984/
>>>
>>> Bug:  https://bugs.openjdk.java.net/browse/JDK-8026894
>>>
>>> The fix was tested with the JCK lang and vm tests, the default 
>>> method tests, the UTE verifier and quick tests, and the JTREG 
>>> hotspot tests.
>>>
>>> Thanks, Harold
>>>
>>>
>>
>



More information about the hotspot-runtime-dev mailing list