From: "k0kubun (Takashi Kokubun) via ruby-core" Date: 2025-02-14T01:52:47+00:00 Subject: [ruby-core:121007] [Ruby master Bug#21010] Endless method definition of `[]=` is SyntaxError in parse.y but allowed in Prism Issue #21010 has been updated by k0kubun (Takashi Kokubun). Backport changed from 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONTNEED, 3.4: REQUIRED to 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONTNEED, 3.4: DONE ruby_3_4 commit:82f7cb794109794f6ffa95ffb3be8e5149dd74bd merged revision(s) commit:ad96c5a72908042489357b73dc936c4bc38d919b, commit:ca81142eff98cccb03ff523322aefe4e7346fd0e. ---------------------------------------- Bug #21010: Endless method definition of `[]=` is SyntaxError in parse.y but allowed in Prism https://bugs.ruby-lang.org/issues/21010#change-111915 * Author: tompng (tomoya ishida) * Status: Closed * Assignee: prism * ruby -v: ruby 3.5.0dev (2025-01-06T01:50:53Z master c8e3d745fa) +PRISM [x86_64-linux] * Backport: 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONTNEED, 3.4: DONE ---------------------------------------- These codes is SyntaxError in parse.y but accepted in Prism ~~~ruby def []=(k,v)=1 def obj.[]=(k,v)=1 ~~~ These are both SyntaxError in parse.y and Prism by design. ~~~ruby # invalid method name; a setter method cannot be defined in an endless method definition def f=(k,v)=1 def obj.f=(k,v)=1 ~~~ I think endless method definition of `[]=` should be also rejected. -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/