1// { dg-do compile }
2
3// Origin: Eelis van der Weegen <gccbugs@contacts.eelis.net>
4
5// PR c++/10552: Member class template as template template argument
6// substitution issue.
7
8template <template <typename> class A, typename>
9struct B
10{
11  typedef typename A<int>::t t;
12};
13
14template <typename D>
15struct E
16{
17  template <typename> struct F { typedef int t; };
18  typedef typename B<F, D>::t t;
19};
20
21typedef E<int>::t t;
22