On Wed, 8 Jun 2022 15:46:24 GMT, Paul Sandoz <psan...@openjdk.org> wrote:
> Allow JDK modules that use preview features (preview language features or > preview API features from dependent modules) to participate without the need > to compile with `--enable-preview`. > > It's difficult to enable participation using an annotation due to the nature > in which symbols are encountered when processing source as there is no > guaranteed order to the processing of certain symbols. > > Instead a JDK module participates if the `java.base` package > `jdk.internal.javac` is exported to that module (@lahodaj clever idea!). An > internal annotation `jdk.internal.javac.ParticipatesInPreview` can be > declared on the module. Such a declaration cannot be enforced but does by its > use require the `jdk.internal.javac`'s export list to be updated. > > The modules `jdk.incubator.vector` and `jdk.incubator.concurrent` have been > updated accordingly, both of which participate in preview APIs (APIs in > `java.lang.foreign` and `Thread.ofVirtual`, respectively). This pull request has now been integrated. Changeset: fb297705 Author: Paul Sandoz <psan...@openjdk.org> URL: https://git.openjdk.org/jdk/commit/fb297705f6dc668bea0257efb9c46b90b5eab2e9 Stats: 140 lines in 12 files changed: 65 ins; 57 del; 18 mod 8287186: JDK modules participating in preview Reviewed-by: alanb, jlahoda ------------- PR: https://git.openjdk.org/jdk/pull/9087