1int 2foo1 (value) 3 long long value; 4{ 5 register const long long constant = 0xc000000080000000LL; 6 7 if (value < constant) 8 return 1; 9 else 10 return 2; 11} 12 13int 14foo2 (value) 15 unsigned long long value; 16{ 17 register const unsigned long long constant = 0xc000000080000000LL; 18 19 if (value < constant) 20 return 1; 21 else 22 return 2; 23} 24 25main () 26{ 27 unsigned long long value = 0xc000000000000001LL; 28 int x, y; 29 30 x = foo1 (value); 31 y = foo2 (value); 32 if (x != y || x != 1) 33 abort (); 34 exit (0); 35} 36