Thank you very much for your tireless work and dedication, Srikanth, Stephan and rest of the Team!
You guys keep ECJ a world-class compiler (and of course, my favorite)
💪
And also thank you for your prompt and thorough responses and fixes in GitHub too. This is no small feat and keeps the community alive
and healthy 💯🎓
Grüße / Regards,
Federico Jeanne
From:
eclipse-dev <eclipse-dev-bounces@xxxxxxxxxxx> On Behalf Of Sankaran, Srikanth via eclipse-dev
Sent: Wednesday, July 30, 2025 2:50 AM
To: General development mailing list of the Eclipse project. <eclipse-dev@xxxxxxxxxxx>; Eclipse JDT general developers list. <jdt-dev@xxxxxxxxxxx>
Cc: Sankaran, Srikanth <srikanth.sankaran@xxxxxxxxxxxxx>
Subject: [eclipse-dev] Review, refactoring, cleanup/polish of all JEPs from Java 10 - 24 in ECJ
Dear Eclipse/JDT users,
On behalf of the Eclipse JDT team and the Advantest R & D team, I am very pleased to share that, the effort we undertook in late 2023 to review and refactor ECJ’s support for all Java language enhancements [*][**] from
Java 10 till Java 24, is finally over - after 20 long months!
As a part of this effort,
-
We reviewed the relevant JLS chapters/sections & JEP documents
-
Studied ECJ’s support for these features, making many improvements in design and implementation
-
Did extensive black box testing, white box testing, behavior compatibility testing against the reference implementation
-
Uncovered over a hundred defects; Also combed through Bugzilla & Github issues tracker to fix outstanding issues - closing over a couple of hundred defects in the compiler in the process
The language features covered are:
- Pattern matching,
- Sealed classes,
- Record classes,
- Switch Expressions,
- Enhanced Switch statements,
- Local variable type inference,
- Nest based access control,
- Text blocks and
- Indy String concatenation.
This is not a big bang infusion of change – these improvements have been delivered gradually over the past several releases in 2024-2025 and the just published 4.37 M2 contains the cumulative changes.
Caveat Emptor: While due (and at times undue!
😊) diligence has been carried out, defects cannot be ruled out. Here then is a request for all interested parties to test 4.37 M2 (https://download.eclipse.org/eclipse/downloads/drops4/S-4.37M2-202507241800/)
and report any issues encountered so that we can fix them in time for 4.37 GA.
Help us deliver a solid 4.37 release!
[*] “JEP 467 – Markdown Javadoc comments” was not included in this effort since it is not a “language” construct per se. We plan to review/refactor this feature implementation later.
[**] While this effort beefed up (only) the compiler support of these language constructs, we are aware that weaknesses and non-trivial shortcomings exist in other areas such as code assistant for these features. We plan
to address these in future.
Thanks,
Srikanth Sankaran.
Advantest R & D team & JDT/Core team.