1// { dg-do run  }
2template <class T> struct A {
3  template <class U> struct B {
4    template <class V> struct C {
5      template <class W> struct D {
6	template <class X> struct E {
7	  template <class Y> struct F {
8	    template <class Z> void f (Z) { }
9	    void g () { }
10	  };
11	};
12      };
13    };
14  };
15};
16
17int main ()
18{
19  A<int>::B<int>::C<int>::D<int>::E<int>::F<int> b;
20  b.f (42);
21  b.g ();
22}
23