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

            Bug ID: 109420
           Summary: [13 Regression] lookup of 'struct T::X' at
                    instantiation time does not ignore non-type bindings
                    of 'X'
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ppalka at gcc dot gnu.org
  Target Milestone: ---

struct A {
  struct X { };
  int X;
};

template<class T>
void f() {
  struct T::X x;
}

template void f<A>();

<stdin>: In instantiation of ‘void f() [with T = A]’:
<stdin>:11:20:   required from here
<stdin>:8:15: error: ‘typename A::X’ names ‘int A::X’, which is not a type

Reply via email to