1// Contributed by Dodji Seketeli <dodji@redhat.com> 2// Origin PR c++/39754 3// { dg-do compile } 4 5template < typename > struct A ; 6template < typename T , typename = A < T > > struct B { } ; 7template < class W , class > struct D 8{ 9 typedef W X ; 10 A<X*> a ; 11}; 12 13template < class Y > struct E 14{ 15 B<Y*> b ; 16} ; 17E<int> e ; 18 19