Draft LW2 spec

Harold Seigel harold.seigel at oracle.com
Wed Jul 3 15:51:17 UTC 2019


Since the <init> static factory method for inline types is sort of a 
constructor, should the JVM Spec require that its return type be the 
same as its method holder (or j.l.Object for Unsafe VM anonymous classes) ?

Also, the description of invokestatic in 4.10 of the draft spec should 
be changed to allow <init> methods.

Thanks, Harold

On 6/28/2019 8:45 PM, Dan Smith wrote:
> Updated spec:
>
> http://cr.openjdk.java.net/~dlsmith/lw2/lw2-20190628/specs/inline-classes-jvms.html
>
> What's new?
>
> - Specification for using "<init>" as a regular method name. Lots of choices to be made here, so I'm curious about how what I ended up with compares to what is currently implemented.
>
> - Added some discussion blocks in various places, based on feedback.
>
> - Changed required version numbers to 57.0.
>
> - Static constraints on use of `ACC_INLINE`, declarations of instance initialization methods, and forms of CONSTANT_Class_infos appearing in various attributes and other places.
>
> - Prohibited circularities in static field types.
>
> - Added resolution checks on Q types in CONSTANT_Classes and CONSTANT_MethodTypes.
>
> - Cleaned up the verification type diagram; fixed the verification type of 'this' in inline classes.
>
> A few big things left to do, as described in the introduction.
>


More information about the valhalla-spec-observers mailing list