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