🔖

[Bug #21010] prism で #[]= をエンドレスメソッドで定義したときのバグ報告

に公開

[Bug #21010] Endless method definition of []= is SyntaxError in parse.y but allowed in Prism

  • 次のように #[]= メソッドをエンドレスメソッド定義で定義しようとすると parse.y ではシンタックスエラーになるが prism ではシンタックスエラーにならない
def []=(k, v) = 1
  • また、次のように #hoge= メソッドの場合は両方ともシンタックスエラーになる
def hoge=(v) = 1
  • これを踏まえた上で前者の #[]= メソッドもシンタックスエラーにするチケット
  • これは開発版の Ruby 3.5-dev ではエラーになるように対応済みです
GitHubで編集を提案

Discussion