[ruby-trunk - Feature #8061][Open] 重複するキーワードをエラーにする

Issue #8061 has been reported by tadf (tadayoshi funaba).


Feature #8061: 重複するキーワードをエラーにする

Author: tadf (tadayoshi funaba)
Status: Open
Priority: Low
Assignee:
Category:
Target version: next minor

重複するキーワードをエラーにする。

def m(a:1, b:2)
p [a, b]
end

m(a:8, a:9)

Issue #8061 has been updated by mame (Yusuke E.).

Assignee set to matz (Yukihiro M.)

キーワード引数の実体はハッシュなので、

{ a: 1, a: 2 } #=> { :a => 2 }

がエラーでない以上、これもエラーにならない方が仕様として単純で好きですが、
明らかにミスっぽいケースを検出してあげるのもありですかね。

m(:a => 8, eval(“:a”) => 9)
h = { a: 8 }; m(**h, a: 9)

などはどうするかと合わせて、matz に。


Yusuke E. [email protected]

Feature #8061: 重複するキーワードをエラーにする

Author: tadf (tadayoshi funaba)
Status: Open
Priority: Low
Assignee: matz (Yukihiro M.)
Category:
Target version: next minor

重複するキーワードをエラーにする。

def m(a:1, b:2)
p [a, b]
end

m(a:8, a:9)