/* { dg-do run } */ | |
extern void abort (void) __attribute__((noreturn)); | |
struct S { int f0; } a; | |
int b, e, *d = &b, f; | |
void | |
fn1 () | |
{ | |
int **g[9][6]; | |
int ***h = &g[6][3]; | |
for (; e < 9; e++) { | |
f = 0; | |
for (; f < 6; f++) | |
g[e][f] = &d; | |
} | |
***h = 0; | |
} | |
void | |
fn2 () | |
{ | |
fn1 (); | |
struct S c[4][10] = {}; | |
a = c[3][9]; | |
} | |
int | |
main () | |
{ | |
fn2 (); | |
if (a.f0 != 0) | |
abort (); | |
return 0; | |
} |