1 /* { dg-do run } */ 2 3 extern void abort (void) __attribute__((noreturn)); 4 5 struct S { int f0; } a; 6 7 int b, e, *d = &b, f; 8 9 void fn1()10fn1 () 11 { 12 int **g[9][6]; 13 int ***h = &g[6][3]; 14 for (; e < 9; e++) { 15 f = 0; 16 for (; f < 6; f++) 17 g[e][f] = &d; 18 } 19 ***h = 0; 20 } 21 22 void fn2()23fn2 () 24 { 25 fn1 (); 26 struct S c[4][10] = {}; 27 a = c[3][9]; 28 } 29 30 int main()31main () 32 { 33 fn2 (); 34 if (a.f0 != 0) 35 abort (); 36 return 0; 37 } 38