1 // Copyright (C) 2001 Free Software Foundation
2 // Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
3 // { dg-do compile }
4 
5 struct A
6 {
7 	template <class T, class U> class B {};
8 };
9 
10 template <template <class> class TT> struct X
11 {
12 	TT<int> y;
13 };
14 
15 template <class T> struct C
16 {
17 	X<T::template B> x; // { dg-error "type" }
18 };
19 
main()20 int main()
21 {
22 	C<A> c; // { dg-message "required" }
23 }
24