1extern void abort (void); 2 3#define assert(x) if(!(x)) abort() 4 5struct S1 6{ 7 signed char f0; 8}; 9 10int g_23 = 0; 11 12static struct S1 13foo (void) 14{ 15 int *l_100 = &g_23; 16 int **l_110 = &l_100; 17 struct S1 l_128 = { 1 }; 18 assert (l_100 == &g_23); 19 assert (l_100 == &g_23); 20 assert (l_100 == &g_23); 21 assert (l_100 == &g_23); 22 assert (l_100 == &g_23); 23 assert (l_100 == &g_23); 24 assert (l_100 == &g_23); 25 return l_128; 26} 27 28static signed char bar(signed char si1, signed char si2) 29{ 30 return (si1 <= 0) ? si1 : (si2 * 2); 31} 32int main (void) 33{ 34 struct S1 s = foo(); 35 if (bar(0x99 ^ (s.f0 && 1), 1) != -104) 36 abort (); 37 return 0; 38} 39 40