Boost logo

Boost :

From: Matthias Troyer (troyer_at_[hidden])
Date: 2003-02-05 14:52:45

On Wednesday, February 5, 2003, at 08:22 PM, Dave Abrahams wrote:

> On Wednesday, February 05, 2003 2:04 PM [GMT+1=CET],
> Matthias Troyer <troyer_at_[hidden]> wrote:
>> Actually there were two problems. One was the one you mentioned above.
>> The other was that we needed either a masking to 32 bits or the type
>> made unsigned to prevent an optimization (integer calculations done on
>> FPU), which led to non-conforming overflow behavior.
> I never got very clear feedback from your guys about what was
> happening,
> but:

we very quite confused for a long time, but it is becoming clear now.

> If the calculations are only done in the FPU when the integers are
> signed,
> then the overflow behavior is conforming, since signed integer
> overflow is
> undefined behavior.

Great, then the compiler is actually conforming and the jam hashing
code was incorrect with signed integers. The SV1 uses the FPU only for
signed integers.

I believe I need to go and buy a copy of the C standard some time.



Boost list run by bdawes at, gregod at, cpdaniel at, john at