modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/pr58277-1.c (about) 1 /* PR tree-optimization/58277 */ 2 3 extern void abort (void); 4 static int a[2]; 5 int b, c, d, *e, f, g, h, **i = &e, k, l = 1, n, o, p; 6 static int **volatile j = &e; 7 const int m; 8 char u; 9 10 int 11 bar () 12 { 13 u = 0; 14 return m; 15 } 16 17 __attribute__((noinline, noclone)) void 18 baz () 19 { 20 asm (""); 21 } 22 23 static int 24 foo () 25 { 26 int t1; 27 g = bar (); 28 if (l) 29 ; 30 else 31 for (;; h++) 32 { 33 *i = 0; 34 o = *e = 0; 35 if (p) 36 { 37 f = 0; 38 return 0; 39 } 40 for (;; k++) 41 { 42 int *t2 = 0; 43 int *const *t3[] = { 44 0, 0, 0, 0, 0, 0, 0, 0, 0, &t2, 0, 0, &t2, &t2, &t2, 45 &t2, &t2, 0, 0, 0, 0, 0, 0, 0, &t2, 0, 0, 0, 0, 0, 0, 46 0, 0, 0, 0, &t2, 0, 0, 0, 0, 0, 0, 0, &t2, &t2, 47 &t2, &t2, &t2, 0, 0, 0, 0, 0, 0, 0, &t2, 0, 0, 0, 48 &t2, 0, 0, 0, &t2, 0, &t2, 0, 0, &t2, 0, 0, 0, 0, 49 0, &t2, 0, 0, 0, 0, &t2, &t2, 0, 0, 0, 0, &t2, 0, 50 0, 0, 0, 0, 0, 0, &t2, 0, 0, 0, 0, 0, &t2, 0, 0, 0, 51 &t2, &t2 52 }; 53 int *const **t4[] = {&t3[0]}; 54 **i = 0; 55 if (**j) 56 break; 57 u = 0; 58 } 59 *i = *j; 60 t1 = 0; 61 for (; t1 < 5; t1++) 62 *i = *j; 63 } 64 *j = 0; 65 return 1; 66 } 67 68 int 69 main () 70 { 71 int t5; 72 a[0] = 1; 73 { 74 int *t6[6] = {&d, &d}; 75 for (n = 1; n; n--) 76 if (foo()) 77 { 78 int *t7[] = {0}; 79 d = 0; 80 for (; u < 1; u++) 81 *i = *j; 82 *i = 0; 83 *i = 0; 84 int t8[5] = {0}; 85 *i = &t8[0]; 86 int *const *t9 = &t6[0]; 87 int *const **t10 = &t9; 88 *t10 = &t7[0]; 89 } 90 } 91 u = 0; 92 for (; b; b++) 93 for (t5 = 0; t5 < 10; t5++) 94 c = a[a[a[a[a[a[a[a[c]]]]]]]]; 95 96 baz (); 97 98 if (!a[a[a[a[a[a[a[a[a[a[a[a[a[a[a[u]]]]]]]]]]]]]]]) 99 abort (); 100 101 return 0; 102 }