On Mon, 20 Nov 2023 11:53:35 GMT, Maurizio Cimadamore <mcimadam...@openjdk.org> wrote:
>> 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! I recommend adding a test for this (if not already done) - checking cases like: // A.java void m() { } class A {} but also where A is nested deeper: // A.java void m() { } class B { class A { } } And then also check that the test still works for other classes defined in the implicit unit: // A.java void m() { } class B { class B { } //error } ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/16461#discussion_r1399096324