Actions
Bug #19323
closedInteger overflow in `Integer#<<`
Bug #19323:
Integer overflow in `Integer#<<`
Description
require 'rbconfig/sizeof'
char_bit = RbConfig::LIMITS["UCHAR_MAX"].bit_length
size_max = RbConfig::LIMITS["SIZE_MAX"]
size_bit_max = size_max * char_bit
1 << size_bit_max
The above code raises an "integer overflow" error.
-:5:in `<<': integer overflow: 4611686018427387905 * 4 > 18446744073709551615 (ArgumentError)
from -:5:in `<main>'
It doesn't seem like a proper or intentional exception.
Actions