diff options
Diffstat (limited to 'stdlib/strtod.c')
-rw-r--r-- | stdlib/strtod.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/stdlib/strtod.c b/stdlib/strtod.c index 1a663ba3ab..6b110f6a4f 100644 --- a/stdlib/strtod.c +++ b/stdlib/strtod.c @@ -149,7 +149,7 @@ round_and_return (mp_limb *retval, int exponent, int negative, round_bit = (shift - 1) % BITS_PER_MP_LIMB; for (i = 0; i < (shift - 1) / BITS_PER_MP_LIMB; ++i) more_bits |= retval[i] != 0; - more_bits |= (round_limb & ((1 << round_bit) - 1)) != 0; + more_bits |= (round_limb & ((((mp_limb) 1) << round_bit) - 1)) != 0; (void) __mpn_rshift (retval, &retval[shift / BITS_PER_MP_LIMB], RETURN_LIMB_SIZE - (shift / BITS_PER_MP_LIMB), |