modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/pr66556.c (about) 1 /* { dg-do run } */ 2 /* { dg-require-effective-target int32plus } */ 3 4 extern void abort (void); 5 6 struct { 7 unsigned f2; 8 unsigned f3 : 15; 9 unsigned f5 : 3; 10 short f6; 11 } b = {0x7f8000, 6, 5, 0}, g = {8, 0, 5, 0}; 12 13 short d, l; 14 int a, c, h = 8; 15 volatile char e[237] = {4}; 16 short *f = &d; 17 short i[5] = {3}; 18 char j; 19 int *k = &c; 20 21 int 22 fn1 (unsigned p1) { return -p1; } 23 24 void 25 fn2 (char p1) 26 { 27 a = p1; 28 e[0]; 29 } 30 31 short 32 fn3 () 33 { 34 *k = 4; 35 return *f; 36 } 37 38 int 39 main () 40 { 41 42 unsigned m; 43 short *n = &i[4]; 44 45 m = fn1 ((h && j) <= b.f5); 46 l = m > g.f3; 47 *n = 3; 48 fn2 (b.f2 >> 15); 49 if ((a & 0xff) != 0xff) 50 abort (); 51 52 return 0; 53 }