I understand your concern here; however, the intent is _not_ to update 4.5A and 4.6A at this time. Since the compiler is setting those flags, we can treat this as a bug to be fixed.
> On Nov 25, 2019, at 11:57 PM, Leonid Kuskov <leonid.kus...@oracle.com> wrote: > > 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 >> >> <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.bier...@oracle.com> >>> <mailto:gavin.bier...@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> >>> >>> <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> >>> >>> <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.bier...@oracle.com >>>> <mailto:gavin.bier...@oracle.com> <mailto:gavin.bier...@oracle.com> >>>> <mailto:gavin.bier...@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> >>>> >>>> <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