blob: 9063a239434af8738f443d9ad6c8eff4bc8740ff [file] [log] [blame]
/* PR tree-optimization/59924 */
/* { dg-do compile } */
/* { dg-options "-O1 -Wall" } */
struct S { struct T *a; double b; struct S *c; };
struct T { struct S *d; };
extern void bar (double);
void
foo (struct S * x, int y, int z, int w)
{
int e;
struct S *f;
for (f = x->a->d; f; f = f->c)
{
if (5 < w)
{
e = -w;
z = w;
}
}
if (y != 0 || z != 0)
{
double g = x->b + (double) e * (double) y; /* { dg-warning "may be used uninitialized" } */
bar (g * g);
}
}