From: "jeremyevans0 (Jeremy Evans) via ruby-core" Date: 2024-03-22T22:31:58+00:00 Subject: [ruby-core:117295] [Ruby master Bug#20388] super + ruby2_keywords isn't working Issue #20388 has been updated by jeremyevans0 (Jeremy Evans). jeremyevans0 (Jeremy Evans) wrote in #note-3: > jeremyevans0 (Jeremy Evans) wrote in #note-2: > > tenderlovemaking (Aaron Patterson) wrote in #note-1: > > > Sorry, I should be more specific. The code sample returns `nil` before 4f77d8d3, and since 4f77d8d3 it will raise an exception (it tries to mutate the `args` array) > > > > Thanks for the report. I'll work on fixing this in the compiler. > > Actually, compiler is fine, this is due to the anonymous splat optimization. Fix appears simple enough, I'll submit a PR shortly: PR: https://github.com/ruby/ruby/pull/10338 ---------------------------------------- Bug #20388: super + ruby2_keywords isn't working https://bugs.ruby-lang.org/issues/20388#change-107437 * Author: tenderlovemaking (Aaron Patterson) * Status: Open * Assignee: jeremyevans0 (Jeremy Evans) * Backport: 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN ---------------------------------------- ```ruby class A def process action, ... end end class B < A def process method_name, *args args.freeze super end ruby2_keywords(:process) end p B.new.process(:foo, bar: :baz) ``` The above code started breaking at revision 4f77d8d3 -- 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/postorius/lists/ruby-core.ml.ruby-lang.org/