On 14 January 2016 at 12:44, Paolo Bonzini <[email protected]> wrote:
> On 14/01/2016 12:15, Peter Maydell wrote:
>> Not that I saw -- ping again, Paolo. This is the only warning
>> that clang's sanitizer currently produces for me, and arithmetic
>> overflows on addition seem genuinely worth investigation...
>
> It happens when the range is 2^64 in size.
>
> Does it still matter if we've decided to use -fwrapv because of left
> shifts?  Or are we still considering the possibility to use -std=gnu89
> (where left shifts give unspecified behavior rather than undefined)?

I think we agreed that we wanted signed shift behaviour if we
could get it, but this is all addition. The code looks a bit
odd to me anyway -- the Range type specifies ranges within a
64-bit address space and thus an unsigned start and end point,
but the code in string-output-visitor.c is specifically using
and feeding in signed values for the start and end.

thanks
-- PMM

Reply via email to