RFR: 8324651: Compiler Implementation for Derived Record Creation (Preview) [v4]
Jan Lahoda
jlahoda at openjdk.org
Thu Mar 28 14:01:07 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 two additional commits since the last revision:
- Adding tests.
- The var declaration can be any JCTree.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/18509/files
- new: https://git.openjdk.org/jdk/pull/18509/files/73752b90..7b706eeb
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=18509&range=03
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=18509&range=02-03
Stats: 170 lines in 3 files changed: 169 ins; 0 del; 1 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