[basic.scope.class] (original) (raw)

For each non-friend redeclaration or specialization whose target scope is or is contained by the scope, the portion after thedeclarator-id,class-head-name, orenum-head-name is also included in the scope.

[Note 1:

Lookup from a program point before the class-specifier of a class will find no bindings in the class scope.

[Example 1: template<class D> struct B { D::type x; // #1 };struct A { using type = int; };struct C : A, B<C> {}; // error at #1: C​::​type not found — _end example_]

— _end note_]