1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// { dg-do assemble } // GROUPS passed templates destructors // Example of PR 3308 workaround template <class T> class A { T q; public: ~A() { (&q)->T::~T(); } }; typedef unsigned int ui; int main() { A<ui> *ap = new A<ui>; delete ap; }