known translation issues related to JEP 482

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Wed Jun 12 12:07:01 UTC 2024


Hi,
as we discussed through the details of the new JLS rules in JEP 482, we 
have found several issues where javac is emitting incorrect code (e.g. 
attempting to capture enclosing instances that are still under 
construction).

In order to allow us to look at these issues more holistically, I've 
created a new JBS label, namely "javac-pre-capture". Here's a query to 
show them all:

https://bugs.openjdk.org/issues/?jql=labels%20%3D%20javac-pre-capture

As stated above, this label is meant for issue related to issues that 
have to do broken translation strategy of enclosing instance references. 
Such issues can manifest them in different ways:

* compiler crashes when compiling correct code (e.g. 
https://bugs.openjdk.org/browse/JDK-8334037)
* "late" compiler error  (e.g. in Lower) as the compiler can't resolve 
an enclosing instance (e.g. https://bugs.openjdk.org/browse/JDK-8334121)
* compiler succeds when compiling a correct program, but the compiled 
program doesn't verify (we don't have an instance of this, yet, but it's 
something bound to occur)

The scope of this label is somewhat (deliberately) narrow. As such, the 
label does NOT cover other issues pertaining to JEP 482, such as

* compiler attempting to translate a bad program 
(https://bugs.openjdk.org/browse/JDK-8334043)
* compiler generating invalid code for reasons that have nothing to do 
with capture (https://bugs.openjdk.org/browse/JDK-8332106)

(if we think that a more general label would be useful to mark all 
issues that have to do with pre-construction context, we can do that too).

Cheers
Maurizio


More information about the amber-dev mailing list