/* { dg-do compile } */ | |
/* { dg-options "-O3" } */ | |
int a, b, c; | |
struct S | |
{ | |
int f0; | |
int f1; | |
} d; | |
static int fn2 (struct S); | |
void fn3 (struct S); | |
void | |
fn1 (struct S p) | |
{ | |
struct S h = { 0, 0 }; | |
fn3 (p); | |
fn2 (h); | |
} | |
int | |
fn2 (struct S p) | |
{ | |
struct S j = { 0, 0 }; | |
fn3 (p); | |
fn2 (j); | |
return 0; | |
} | |
void | |
fn3 (struct S p) | |
{ | |
for (; b; a++) | |
c = p.f0; | |
fn1 (d); | |
} | |
void | |
fn4 () | |
{ | |
for (;;) | |
{ | |
struct S f = { 0, 0 }; | |
fn1 (f); | |
} | |
} |