how to make gcc warn about arithmetic signed overflow
Fri Sep 27 08:23:00 GMT 2013
On 09/27/2013 08:57 AM, Vincent Lefevre wrote:
> On 2013-09-26 18:30:10 +0100, Andrew Haley wrote:
>> On 09/26/2013 06:02 PM, Vincent Lefevre wrote:
>>> On 2013-09-26 15:49:05 +0100, Andrew Haley wrote:
>>>> On 09/26/2013 09:29 AM, Vincent Lefevre wrote:
>>>>> On 2013-09-25 22:29:58 -0400, James K. Lowden wrote:
>>>>>> You mean that a naÃ¯ve rendering of the source code implies an overflow
>>>>>> where none might exist in the actual emitted object code. And,
>>>>>> presumably, the converse: that even if the source is written such that
>>>>>> there logically can't be an overflow, the compiler might render object
>>>>>> code that does.
>>>>> The converse is forbidden.
>>>> You'll find it hard to justify that by any language in the standard.
>>> What do you mean?
>> There is no reason why a compiler should not generate an overflow
>> where none is written in the program, as long as it doesn't generate
>> a different result.
> OK, I wouldn't call that an overflow, then.
As far as the processor is concerned, what sets the overflow flag is
an overflow. That's the context of this discussion.
> I thought you meant rewrite the code in an intermediate step,
> generating an overflow, before knowing the consequences at the
> target level. The term "overflow" has a connotation of exception /
> undefined behavior.
Sure. No disagreement there.
More information about the Gcc-help