https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59256

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |accepts-invalid

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Uh, just rediscovered this and recreated exactly the same reduced testcase!

Also, this variation which should not compile (because lookup should fail for
N::f):

namespace N
{
  namespace detail
  {
    inline namespace ver
    {
      template<typename T>
        void f();
    }
  }

  template<typename T>
    void
    detail::f() { }
}

int main()
{
  N::f<int>();
}

Somehow the fact N::detail::ver is an inline namespace causes N::detail::f to
also be declared in N.

Reply via email to