1 // Contributed by Dodji Seketeli <dodji@redhat.com>
2 // { dg-do compile }
3 
4 template<class T>
5 struct S0
6 {
7 };
8 
9 template<class T>
10 struct S1
11 {
12 };
13 
14 template<class T, template<class U>  class A, template<class U>  class B = A>
15 struct C
16 {
17   B<T> m;
18 };
19 
20 void
foo()21 foo()
22 {
23   C<int, S0> s;
24   S0<int> s0;
25 
26   s.m = s0;
27 }
28