Aaron Bannert wrote:
+ if ( (any < 0) || (neg && (val > acc || (val -= c) > acc))
Isn't that one of those short-circuits that causes bad side-effects
under different circumstances? I have a feeling that it is not
well defined if the -= operation is always performed or not, but
I could be wrong.
It seems well defined to me, but it's a total pain in the nethers to
read and understand.
Assuming I can understand what's going on here,
I'll take a shot at trying to make the logic more clear (while
keeping as much of the constant-folding/short-circuiting as possible.)
Go go go!
--
Brane Äibej <[EMAIL PROTECTED]> http://www.xbc.nu/brane/