Re: Please don't do this (code fragment)
Thanks. This makes sense.
On Tue, Jan 15, 2002 at 07:25:29PM +0100, Olaf Weber wrote:
> Thomas Bushnell writes:
>
> > Actually, the C standard does essentially guarantee two's complement
> > arithmetic. It specifies integer overflow behavior and
> > signed/unsigned conversion behavior exactly.
>
> It does for unsigned integers, but for signed integers overflow is
> undefined behaviour. The clearest statement of that is 3.4.3, albeit
> in an example:
>
> 3.4.3
> 1 undefined behavior behavior, upon use of a nonportable or erroneous
> program construct or of erroneous data, for which this International
> Standard imposes no requirements
> 2 NOTE Possible undefined behavior ranges from ignoring the situation
> completely with unpredictable results, to behaving during translation
> or program execution in a documented manner characteristic of the
> environment (with or without the issuance of a diagnostic message),
> to terminating a translation or execution (with the issuance of a
> diagnostic message).
> 3 EXAMPLE An example of undefined behavior is the behavior on integer
> overflow.
>
> --
> Olaf Weber
>
> (This space left blank for technical reasons.)
>
>
> --
> To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Reply to: