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