RFR: 8292914: Drop the counter from lambda class names

Brian Goetz briangoetz at openjdk.org
Wed Feb 15 19:12:53 UTC 2023


On Wed, 15 Feb 2023 17:32:38 GMT, David M. Lloyd <duke at openjdk.org> wrote:

> 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.

While I agree with your assessment that this is a much less intrusive solution to JDK-8292914 than the proposed system property, I also take Mandy's concern seriously here.  

I suspect that as Leyden progresses, there will be multiple issues we may want to consider in various bootstrap implementations to make them more amenable to time-shifting.  I propose that we leave this PR on the table to be considered when we take up the issue more holistically, rather than doing it in bits and pieces?

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

PR: https://git.openjdk.org/jdk/pull/12579


More information about the core-libs-dev mailing list