/* { dg-do compile } */ | |
/* { dg-options "-O2" } */ | |
#define assert(x) if (!(x)) __builtin_abort () | |
int a, b, c, d, e, f, g; | |
int | |
fn1 () | |
{ | |
int *h = &c; | |
for (; c < 1; c++) | |
{ | |
int *i = &a, *k = &a; | |
f = 0; | |
if (b) | |
return 0; | |
if (*h) | |
{ | |
int **j = &i; | |
*j = 0; | |
d = 0; | |
} | |
else | |
g = e = 0; | |
if (*h) | |
{ | |
int **l = &k; | |
*l = &g; | |
} | |
d &= *h; | |
assert (k == &a || k); | |
assert (i); | |
} | |
return 0; | |
} | |
int | |
main () | |
{ | |
fn1 (); | |
return 0; | |
} |