>>>>> Geoff Keating writes: Geoff> Aah. Each element of 'i' only needs to be 32 bits wide (and in fact Geoff> has to be of type 'long', look at the prototype of etardouble() in Geoff> real.c), the correct fix is to cast it to HOST_WIDE_INT before Geoff> shifting it. Yes, I already committed that change. David