1// { dg-do assemble  }
2
3extern void byebye ();
4template <class T1, class T2>
5struct A
6{
7  T1 t1;
8  T2 t2;
9  A() { t1 = 0; t2 = 0; }
10  ~A() { byebye(); }
11};
12
13template <class Q>
14int f (A<int, Q> a) {
15  return a.t1;
16}
17
18extern A<int,double*> aa;
19int foop () { return f(aa); }
20