1 // PR c++/72764
2 // { dg-do compile { target c++11 } }
3 
4 template < typename > struct A;
5 template < typename > struct B {};
6 
7 template < typename T >
8 using C = typename A < T >::template D < T >;
9 
10 template < typename T > struct A
11 {
12   // should be: template < typename > struct D : B < C < T > > {};
13   struct D : B < C < T > > {};	// { dg-error "not a class template" }
14 };
15 
16 A < int >::D a;			// { dg-message "required" }
17