👻
[Bug #21170] #hash が -1 を返すと Hash が破損するというバグ報告
[Bug #21170] Corrupted Hash (bad VALUE and missing entry) when -1 returned from .hash
-
#hash
が-1
を返すと Hash が破損するというバグ報告
class MyObj
attr_reader :hash
def initialize(val) = @hash = val
end
values = 0.downto(-16).to_a
hash = {}
values.each do |val|
hash[MyObj.new(val)] = val
end
# -1 の要素だけ false という不明な値になってしまっている
p hash.values
# => [0, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14, -15, false, -16]
- この不具合は開発版の Ruby 3.5-dev ですでに修正済
Discussion