RFR(XS) 8130669: VM prohibits <clinit> methods with return values

Ioi Lam ioi.lam at oracle.com
Wed Jul 8 20:59:06 UTC 2015


Looks good to me. Thanks
- Ioi

On 7/8/15 1:08 PM, harold seigel wrote:
> Hi Ioi,
>
> Here's an updated webrev with ignoredClinit as a .jasm file. Please 
> let me know if it looks okay.
>
>     http://cr.openjdk.java.net/~hseigel/bug_8130669.1/
>
> Thanks, Harold
>
> On 7/8/2015 3:46 PM, Ioi Lam wrote:
>> Hi Harold,
>>
>> Is there any reason why the ignoredClinit needs to be written in a 
>> jcod file and not a jasm file? jasm files would be a lot easier to 
>> read and maintain than jcod.
>>
>> Thanks
>> - Ioi
>>
>> On 7/8/15 6:32 AM, harold seigel wrote:
>>> Hi,
>>>
>>> Please review this small change to fix bug JDK-8130669.  The JVM 
>>> incorrectly throws ClassFormatError exceptions for non-void methods 
>>> named <clinit>.  But, the JVM Spec 8 says that such <clinit> methods 
>>> should be ignored.  See 
>>> http://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html#jvms-2.9 
>>> for details.
>>>
>>> The fix changes the JVM to, in this case, only throw 
>>> ClassFormatError exceptions for non-void <init> methods.
>>>
>>> Open Webrev: http://cr.openjdk.java.net/~hseigel/bug_8130669/
>>>
>>> JBS Bug: https://bugs.openjdk.java.net/browse/JDK-8130669
>>>
>>> The fix was tested with JCK Lang and VM tests, the UTE quick and 
>>> split_verifier tests, and the hotspot, java/io, java/lang, and 
>>> java/util JTreg tests.
>>>
>>> Thanks, Harold
>>
>



More information about the hotspot-runtime-dev mailing list