[lworld] RFR: 8279368: [lworld] Add parser support for declaration of value classes

Srikanth Adayapalam sadayapalam at openjdk.java.net
Mon Jan 10 12:39:46 UTC 2022


On Mon, 10 Jan 2022 12:30:11 GMT, Srikanth Adayapalam <sadayapalam at openjdk.org> wrote:

> Enhance the parser to accept value class declarations

Notes for reviewer:

    - This patch ddds support for value classes in the parser
      using the value modifier or the __value__ annotation 
      (latter is temporary untils IDEs support value modifier)

    - All that happens at the moment is, value class syntax is
      digested and a value classe is flagged as being one by 
      virtue of setting the Flags.VALUE_CLASS bit.

    - This bit itself is "dropped" (ignored) by subsequent stages
      of the pipeline as of now

    - Feature support base version level bumped up to 18

    - Introduce the class file symbolic constant ACC_VALUE (0x100)

    - Contains a bug fix - sometimes we were not emitting the best
      message for use of primitive/value classes with an inappropriate
      source level (instead of complaining "primitive/value classes are
      not supported in -source 17" we were instead complaining 
      "warning: 'primitive' may become a restricted type name in future"

    - Fixed a singular -> plural grammar issue in diagnostics.

-------------

PR: https://git.openjdk.java.net/valhalla/pull/596



More information about the valhalla-dev mailing list