RFR: 8292914: Drop the counter from lambda class names [v2]
David M. Lloyd
duke at openjdk.org
Wed Feb 15 22:44:21 UTC 2023
> The class generated for lambda proxies is now defined as a hidden class. This means that the counter, which was used to ensure a unique class name and avoid clashes, is now redundant. In addition to performing redundant work, this also impacts build reproducibility for native image generators which might already have a strategy to cope with hidden classes but cannot cope with indeterminate definition order for lambda proxy classes.
>
> This solves JDK-8292914 by making lambda proxy names always be stable without any configuration needed. This would also replace #10024.
David M. Lloyd has refreshed the contents of this pull request, and previous commits have been removed. The incremental views will show differences compared to the previous content of the PR. The pull request contains one new commit since the last revision:
8292914: Drop the counter from lambda class names
The class generated for lambda proxies is now defined as a hidden class. This means that the counter, which was used to ensure a unique class name and avoid clashes, is now redundant. In addition to performing redundant work, this also impacts build reproducibility for native image generators which might already have a strategy to cope with hidden classes but cannot cope with indeterminate definition order for lambda proxy classes.
Additionally, the lambda proxy class dumper is enhanced to prepend a raw timestamp before the filename.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/12579/files
- new: https://git.openjdk.org/jdk/pull/12579/files/5ab516a5..0e109beb
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=12579&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=12579&range=00-01
Stats: 3 lines in 1 file changed: 2 ins; 0 del; 1 mod
Patch: https://git.openjdk.org/jdk/pull/12579.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/12579/head:pull/12579
PR: https://git.openjdk.org/jdk/pull/12579
More information about the core-libs-dev
mailing list