[EMAIL PROTECTED] (Paul Jarc) writes: > Richard Neill <[EMAIL PROTECTED]> wrote: >> I thought testing for overflow was quite simple? >> Isn't it just a case of looking at the carry-bit, and seeing whether it >> gets set? > > That's usually how it's done in assembly. In C, it's somewhat more > compilcated. For example: > result=a*b; > if (result/a!=b) { report overflow; }
That won't work, since (signed integer) overflow is undefined in C. A compiler is allowed to optimize the condition to false. Andreas. -- Andreas Schwab, SuSE Labs, [EMAIL PROTECTED] SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." _______________________________________________ Bug-bash mailing list Bug-bash@gnu.org http://lists.gnu.org/mailman/listinfo/bug-bash