Project

General

Profile

Actions

Bug #21402

open

ruby2_keywords affects methods/procs with post arguments

Added by jeremyevans0 (Jeremy Evans) 8 days ago.

Status:
Open
Assignee:
-
Target version:
-
[ruby-core:122501]

Description

I believe this is an oversight. We forgot to consider post arguments during the development of ruby2_keywords. I believe we should not allow ruby2_keywords on methods/procs with post arguments. Example:

def a(*c, **kw) [c, kw] end
def b(*a, b) a(*a, b) end
ruby2_keywords(:b)

b({foo: 1}, bar: 1)
# Currently: [[{foo: 1}], {bar: 1}]
#  Expected: [[{foo: 1}, {bar: 1}], {}]

I think the current behavior is unexpected and undesired, because instead of flagging the last element in the splat array, it flags a post argument.

I've submitted a pull request to fix this: https://github.com/ruby/ruby/pull/13475

No data to display

Actions

Also available in: Atom PDF

Like0