RFR: JDK-8315458 Implement JEP 463: Implicitly Declared Classes and Instance Main Method (Second Preview) [v21]

Maurizio Cimadamore mcimadamore at openjdk.org
Mon Nov 20 11:58:48 UTC 2023


On Fri, 17 Nov 2023 13:56:13 GMT, Jim Laskey <jlaskey at openjdk.org> wrote:

>> Address changes from JEP 445 to JEP 463.
>> 
>> - Move from a SYNTHETIC unnamed class to a MANDATED implicit class.
>> 
>> - Don't mark class on read.
>> 
>> - Remove reflection and annotation processing related to unnamed classes.
>> 
>> - Simplify main method search.
>
> Jim Laskey has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Allow nested class of same name as file
>   
>   Since it doesn't create a conflicting symbol and would produce a confusing error otherwise.

src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java line 464:

> 462:         }
> 463:         for (Symbol sym = s.owner; sym != null; sym = sym.owner) {
> 464:             if (sym.kind == TYP && sym.name == name && sym.name != names.error &&

Looks good!

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16461#discussion_r1399091826


More information about the compiler-dev mailing list