1 // { dg-do link } 2 // { dg-options "-fno-implicit-templates" } 3 4 template <class T> struct C { 5 ~C(); 6 }; 7 template <class T> C<T>::~C() {} 8 9 struct X { 10 C<X> *p; 11 ~X() { delete p; } 12 }; 13 14 template class C<X>; 15 C<X> x; 16 17 int main () {} 18