1 // PR tree-optimization/47355
2 // { dg-do compile }
3 // { dg-options "-O -fipa-cp -fipa-cp-clone" }
4 
5 struct T
6 {
7   T ();
8   void *p;
9   ~T ();
10 };
11 
12 void foo (T *i);
13 
14 T *bar ();
15 void baz (T *);
16 
17 struct V
18 {
19   long q;
20   T *r;
~VV21   ~V ()
22   {
23     while (q)
24       {
25 	foo (r);
26 	++r;
27 	--q;
28       }
29     baz (r);
30   }
31 };
32 
33 void
foo()34 foo ()
35 {
36   V v;
37   T t;
38   v.r = bar ();
39 }
40