From: shevegen@... Date: 2018-03-17T04:08:16+00:00 Subject: [ruby-core:86166] [Ruby trunk Bug#14611] Exotic method parameters bug Issue #14611 has been updated by shevegen (Robert A. Heiler). I did not know that either. I guess the problem was that bogdan was using variables with a leading '_'. With this: def x(a,a,b) puts 'HI' end I get in IRB: SyntaxError ((irb):1: duplicated argument name With that, however had: def x(_a,_a,_b) puts 'hi' end x(1,2,3) # => hi I get no error and the method call works. I have no idea if this is a bug or a feature but to me, just from looking at the above, I would have assumed that _a is equal to _a just as a was equal (considered) above. ---------------------------------------- Bug #14611: Exotic method parameters bug https://bugs.ruby-lang.org/issues/14611#change-71050 * Author: bogdan (Bogdan Gusiev) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: 2.4.2 * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- Consider the following code: ~~~ ruby def test(_, x, *_) x end test(1,2,3) # => nil ~~~ By some reason second parameter is nil when the rest of parameters declared as not used. -- https://bugs.ruby-lang.org/ Unsubscribe: