😽

[Bug #20799] Struct のメソッドに転送引数を渡したときのバグ報告

2024/10/13に公開

[Bug #20799] Bug in forwarding to struct methods

  • 開発版の Ruby 3.4-dev で以下のコードがクラッシュするというバグ報告
Thing = Struct.new(:value)

Obj = Thing.new("ok")

def delegate(...)
  Obj.value(...)
end

def no_args
  delegate
end

def splat_args(*args)
  delegate(*args)
end

no_args
# これを呼び出したときにクラッシュする
splat_args
  • 一度 Struct のメソッドに転送引数を渡すあたりでバグってるらしいのかな?
    • forwarding IC って単語が出てきてるけどなんだろう
  • この不具合は開発版の Ruby 3.4-dev ですでに修正済みです
GitHubで編集を提案

Discussion