RFR: 8324651: Compiler Implementation for Derived Record Creation (Preview) [v8]
Jan Lahoda
jlahoda at openjdk.org
Fri Apr 5 18:35:37 UTC 2024
> This is a patch for javac, that adds the Derived Record Creation expressions. The current draft specification for the feature is:
> https://cr.openjdk.org/~gbierman/jep468/jep468-20240326/specs/derived-record-creation-jls.html
>
> The current CSR is here:
> https://bugs.openjdk.org/browse/JDK-8328637
>
> The patch is mostly straightforward, with two notable changes:
> - there is a new `ElementKind.COMPONENT_LOCAL_VARIABLE`, as the specification introduces this term, and it seems consistent with `ElementKind.BINDING_VARIABLE` that was introduced some time ago.
> - there are a bit broader changes in `Flow`, to facilitate the introduction of variables without an explicit declaration for definite assignment and effectively final computation.
Jan Lahoda has updated the pull request incrementally with one additional commit since the last revision:
Reflecting review feedback:
- pre-generating the JCVarDecls in Attr, to aid Flow
- adding a note on how the desugared code looks like
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/18509/files
- new: https://git.openjdk.org/jdk/pull/18509/files/c91e87fd..14651358
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=18509&range=07
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=18509&range=06-07
Stats: 75 lines in 6 files changed: 30 ins; 11 del; 34 mod
Patch: https://git.openjdk.org/jdk/pull/18509.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/18509/head:pull/18509
PR: https://git.openjdk.org/jdk/pull/18509
More information about the core-libs-dev
mailing list