https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91826
Bug ID: 91826 Summary: Unexpected behavior when class defined with namespace alias Product: gcc Version: 9.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: mf at simerics dot com Target Milestone: --- The following code compile on GCC 7.3, MSVC 2015 & 2019. It fail on GCC 9.2 with error: declaration of ‘class N2::N::C2’ in namespace ‘N2’ which does not enclose ‘N2::A2’ namespace N1 { class C1; } namespace A1 = N1; class A1::C1 {}; //Ok namespace N2 { namespace N { class C2; } namespace A2 = N; class A2::C2 {}; //Error } namespace N3 { namespace N { class C3; } } namespace A3 = N3::N; class A3::C3 {}; //Ok