https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84709
Bug ID: 84709 Summary: Cannot define method with same name of previously using declared class Product: gcc Version: 7.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: jose.dapena at lge dot com Target Milestone: --- This test case is failing with g++ 7.3.0: namespace A { class Foo { ... }; } using A::Foo namespace B { class Bar { const Foo &Foo() const { ... } } The declaration of B Foo accessor fails because it "changes meaning" of A::Foo. But as far as I could check in C++14 standard, this should be covered by basic.scope.hiding/2 right?