[#92063] [Ruby trunk Misc#15723] Reconsider numbered parameters — zverok.offline@...
SXNzdWUgIzE1NzIzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgenZlcm9rIChWaWN0b3IgU2hlcGVsZXYp
3 messages
2019/03/31
[ruby-core:91724] [Ruby trunk Bug#15647] Disallow "in" as a keyword argument name
From:
drbrain@...7.net
Date:
2019-03-08 23:14:03 UTC
List:
ruby-core #91724
Issue #15647 has been updated by drbrain (Eric Hodel). This would break the Kernel#spawn family's backward compatibility make wrapping methods in this family harder than it already is, as you can work around this with Binding#local_variable_get. I think this should be rejected. ---------------------------------------- Bug #15647: Disallow "in" as a keyword argument name https://bugs.ruby-lang.org/issues/15647#change-76999 * Author: localhostdotdev (localhost .dev) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin17] * Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN ---------------------------------------- "in" is a reversed keyword and thus can't be accessed directly anyway. e.g. the following is a syntax error: `def m(in:); p in; end; m(in: 1)` And as usual, doing `in = 1` doesn't work. "in" could still be passed as a keyword argument if using some kind of catch-all, e.g. m(args), m(*args), etc. Source: https://twitter.com/drbrain/status/1104152696339087361 -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>