[ruby-core:117295] [Ruby master Bug#20388] super + ruby2_keywords isn't working
From:
"jeremyevans0 (Jeremy Evans) via ruby-core" <ruby-core@...>
Date:
2024-03-22 22:31:58 UTC
List:
ruby-core #117295
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/