1// Test for nested template template parameter feature
2
3template <template<template <class> class> class TTT> struct C
4{
5	int f() { return 0; }
6};
7
8template <template <class> class TT> struct D
9{
10	int	a;
11};
12
13template <template <class> class TT> struct E
14{
15	int	a;
16	int	b;
17};
18
19template <template <template <template<class> class> class> class TTT>
20int g(TTT<E> t)
21{
22	TTT<D> tt;
23	return tt.f();
24}
25
26int main()
27{
28	C<E> c;
29	g(c);
30}
31