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