> On Aug 5, 2026, at 6:29 AM, Oleg Estekhin <[email protected]> wrote: > > What i have tried: > - compiling on 26, running on 27-jep401ea3 - works. > - compiling on 26, running on 27-jep401ea3 **preview** - works. > - compiling on 27-jep401ea3, running on 27-jep401ea3 - works. > - compiling on 27-jep401ea3 **preview**, running under 27-jep401ea3 > **preview** - works with `-Xverify:none`. > - replacing EVERY `record` with `value record`, compiling on 27-jep401ea3 > **preview**, running under 27-jep401ea3 **preview** - works. > > "Works" means, that, after some minor adjustments in the murkier parts of > the code, our project compiles and passes all unit tests, and also runs and > passes all e2e tests.
That’s a really positive report, good to hear! > ### self-referencing constructor (even without preview) > > https://github.com/estekhin/playground-valhalla/tree/main/valhalla-ea-self-referencing-constructor-compilation-failure > > We had some classes with constructors that pass constructor ref to the > super, like > ```java > SelfReferencingByConstructorRef() { > super(SelfReferencingByConstructorRef::new); > } > ``` > which works under 26/27ea/28ea b9, but fails under 27-jep401ea3 with > `reference to null may only appear after an explicit constructor > invocation`. > > The code is questionable in the first place, but at least it is easy to fix > by introducing a static wrapper over the call to constructor. > > https://github.com/estekhin/playground-valhalla/tree/main/valhalla-ea-separate-compilation-failure > Looks like this one is fixed in mainline. In a day or two, there should be an updated 28 EA published here that includes all the JEP 401 code: https://jdk.java.net/28/ You should try again with that updated bundle and see how these issues look then.
