Bug #7244
closedArgumentError of refine
Description
refine は 1 個しか引数をとらないはずなのにブロックを渡さずに引数 1 個で呼び出すと (0 for 1..3) という ArgumentError になります。
% ruby -v
ruby 2.0.0dev (2012-10-30 trunk 37389) [x86_64-linux]
% ruby -e 'Class.new{|c|refine}'
-e:1:in refine': wrong number of arguments (0 for 1) (ArgumentError) from -e:1:in
block in '
from -e:1:in initialize' from -e:1:in
new'
from -e:1:in <main>' % ruby -e 'Class.new{|c|refine c}' -e:1:in
refine': wrong number of arguments (0 for 1..3) (ArgumentError)
from -e:1:in block in <main>' from -e:1:in
initialize'
from -e:1:in new' from -e:1:in
'
%
Updated by shugo (Shugo Maeda) about 12 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
This issue was solved with changeset r37390.
Kazuhiro, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
-
eval.c (rb_mod_refine): fix the error message when no block is
given. [ruby-dev:46319] [Bug #7244] -
test/ruby/test_refinement.rb: related test.