// Contributed by Dodji Seketeli // Origin PR c++/39754 // { dg-do compile } struct Foo {}; template struct A ; template > struct B { } ; template struct D { typedef W X; A a ; }; template struct E { B b ; }; E e ;