diff --git a/ext/f2c_libs/lbitbits.c b/ext/f2c_libs/lbitbits.c index 5b6ccf72d..2f44abf9d 100644 --- a/ext/f2c_libs/lbitbits.c +++ b/ext/f2c_libs/lbitbits.c @@ -44,11 +44,11 @@ lbit_cshift(integer a, integer b, integer len) full_len: if (b >= 0) { b %= LONGBITS; - return (integer)(x << b | x >> LONGBITS -b ); + return (integer)(x << b | x >> (LONGBITS -b) ); } b = -b; b %= LONGBITS; - return (integer)(x << LONGBITS - b | x >> b); + return (integer)(x << (LONGBITS - b) | x >> b); } y = z = (unsigned long)-1; y <<= len; @@ -57,11 +57,11 @@ lbit_cshift(integer a, integer b, integer len) x &= z; if (b >= 0) { b %= len; - return (integer)(y | z & (x << b | x >> len - b)); + return (integer)((y) | (z & (x << b | x >> (len - b)))); } b = -b; b %= len; - return (integer)(y | z & (x >> b | x << len - b)); + return (integer)((y) | (z & (x >> b | x << (len - b)))); } #ifdef __cplusplus }