-spc (Wish the C standard committee had the balls to
say "2's
complement all the way, and a physical bit pattern of all 0s is a
NULL pointer" ... )
As far as I'm concerned, this is different only in degree from `Wish
the C standard committee had the balls to say "Everything is x86".'.
[3] Often to disasterous results. An agressive C
optimizer can
optimize the following right out:
if (x + 1 < x ) { ... }
Because "x+1" can *never* be less than
"x" (signed overflow?
What's that?)
More precisely, because signed overflow invokes undefined behaviour,
meaning that, for values of x where x+1 overflows, the program can
behave in any way whatever and still be within spec. Including, say,
skipping the stuff inside the { } block.
/~\ The ASCII Mouse
\ / Ribbon Campaign
X Against HTML mouse at
rodents-montreal.org
/ \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B