1foo (a) 2{ 3 return (a & (1 << 31)) != 0; 4} 5 6main () 7{ 8 if (foo (0)) 9 puts ("foo"); 10 else 11 puts ("bar"); 12 if (foo (~0)) 13 puts ("foo"); 14 else 15 puts ("bar"); 16} 17