1 typedef unsigned int u32; 2 typedef unsigned long long u64; 3 u64 a; 4 u32 b; 5 6 u64 foo(u32 d)7 foo (u32 d) 8 { 9 a -= d ? 0 : ~a; 10 return a + b; 11 } 12 13 int main(void)14 main (void) 15 { 16 u64 x = foo (2); 17 if (x != 0) 18 __builtin_abort(); 19 return 0; 20 } 21 22