Updated Draft specs for JEP 359 (Records)

Leonid Kuskov leonid.kuskov at oracle.com
Tue Nov 26 04:57:32 UTC 2019


Hello,

 From my point of view, JVMS is not fully updated to support Records.
The new spec should have  ACC_MANDATED in the tables for its consistency:
     Table 4.5-A. "Field access and property flags" 
<https://docs.oracle.com/javase/specs/jvms/se12/html/jvms-4.html#jvms-4.5-200-A.1>, 

Table 4.6-A. "Method access and property flags". 
<https://docs.oracle.com/javase/specs/jvms/se12/html/jvms-4.html#jvms-4.6-200-A.1> 

otherwise, the following assertions are violated:

All bits of the access_flags item not assigned in Table 4.5-A are 
reserved for future use.
They should be set to zero in generated class files and should be 
ignored by Java Virtual Machine implementations.

All bits of the access_flags item not assigned in Table 4.6-A are 
reserved for future use.
They should be set to zero in generated class files and should be 
ignored by Java Virtual Machine implementations.

Formally speaking, currently, fields/methods can't be marked with the  
ACC_MANDATED flag.

Thanks,
Leonid

On 11/21/19 07:01, Gavin Bierman wrote:
> A hopefully final draft language spec for JEP 359 (Records) is available at:
>
> http://cr.openjdk.java.net/~gbierman/jep359/jep359-20191121/specs/records-jls.html
>
> This incorporates (I hope!) all the very helpful suggestions from everyone on these lists - many thanks.
>
> As always - any further comments/thoughts/bugs most welcome!
>
> Gavin
>
>> On 31 Oct 2019, at 14:17, Gavin Bierman <gavin.bierman at oracle.com> wrote:
>>
>> An updated draft language spec for JEP 359 (Records) is available at:
>>
>> http://cr.openjdk.java.net/~gbierman/jep359/jep359-20191031/specs/records-jls.html <http://cr.openjdk.java.net/~gbierman/jep359/jep359-20191031/specs/records-jls.html>
>>
>> (Alongside is a draft JVM spec for this feature:
>>
>> http://cr.openjdk.java.net/~gbierman/jep359/jep359-20191031/specs/records-jvms.html <http://cr.openjdk.java.net/~gbierman/jep359/jep359-20191031/specs/records-jvms.html>
>>
>> )
>>
>> As always, please email me any comments/thoughts/bugs.
>>
>> Thanks,
>> Gavin
>>
>>
>>> On 23 Aug 2019, at 22:25, Gavin Bierman <gavin.bierman at oracle.com <mailto:gavin.bierman at oracle.com>> wrote:
>>>
>>> A draft language spec for records is available at:
>>>
>>> http://cr.openjdk.java.net/~gbierman/8222777/8222777-20190823/specs/records-jls.html <http://cr.openjdk.java.net/~gbierman/8222777/8222777-20190823/specs/records-jls.html>
>>>
>>> This spec doesn’t yet discuss varargs records - to appear in the next draft.
>>>
>>> All comments welcomed!
>>>
>>> Thanks,
>>> Gavin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/amber-spec-experts/attachments/20191125/31224f87/attachment-0001.html>


More information about the amber-spec-experts mailing list