111
|
1 /* PR tree-optimization/59924 */
|
|
2 /* { dg-do compile } */
|
|
3 /* { dg-options "-O1 -Wall" } */
|
|
4
|
|
5 struct S { struct T *a; double b; struct S *c; };
|
|
6 struct T { struct S *d; };
|
|
7 extern void bar (double);
|
|
8
|
|
9 void
|
|
10 foo (struct S * x, int y, int z, int w)
|
|
11 {
|
|
12 int e;
|
|
13 struct S *f;
|
|
14 for (f = x->a->d; f; f = f->c)
|
|
15 {
|
|
16 if (5 < w)
|
|
17 {
|
|
18 e = -w;
|
|
19 z = w;
|
|
20 }
|
|
21 }
|
|
22 if (y != 0 || z != 0)
|
|
23 {
|
|
24 double g = x->b + (double) e * (double) y; /* { dg-warning "may be used uninitialized in this function" } */
|
|
25 bar (g * g);
|
|
26 }
|
|
27 }
|