[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Bash arithmetic doesn't give error message on wrap.
From: |
Andreas Schwab |
Subject: |
Re: Bash arithmetic doesn't give error message on wrap. |
Date: |
Mon, 30 Apr 2007 23:23:12 +0200 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.97 (gnu/linux) |
prj@po.cwru.edu (Paul Jarc) writes:
> Richard Neill <rn214@hermes.cam.ac.uk> 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, schwab@suse.de
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."
- Bash arithmetic doesn't give error message on wrap., Richard Neill, 2007/04/27
- Re: Bash arithmetic doesn't give error message on wrap., Chet Ramey, 2007/04/28
- Re: Bash arithmetic doesn't give error message on wrap., Richard Neill, 2007/04/28
- Re: Bash arithmetic doesn't give error message on wrap., Bob Proulx, 2007/04/29
- Re: Bash arithmetic doesn't give error message on wrap., Richard Neill, 2007/04/29
- Re: Bash arithmetic doesn't give error message on wrap., Andreas Schwab, 2007/04/30
- Re: Bash arithmetic doesn't give error message on wrap., Bob Proulx, 2007/04/30
- Re: Bash arithmetic doesn't give error message on wrap., Richard Neill, 2007/04/30
- Re: Bash arithmetic doesn't give error message on wrap., Paul Jarc, 2007/04/30
- Re: Bash arithmetic doesn't give error message on wrap.,
Andreas Schwab <=
- Re: Bash arithmetic doesn't give error message on wrap., Paul Jarc, 2007/04/30
- Re: Bash arithmetic doesn't give error message on wrap., Paul Jarc, 2007/04/30