summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-06-14 13:41:29 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-06-14 13:41:29 +0000
commitd616f6005c9ca66db6d1aea08d7235a00f7fab58 (patch)
treebb58d862762ff3ad7a6423431301bb6b4ccf19fe /eval.c
parente0a5ffa941d22ef4320db4ea803594e4dbb480d6 (diff)
* eval.c (method_arity): should handle NODE_BMETHOD and
NODE_DMETHOD. [ruby-core:01138] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/eval.c b/eval.c
index 101a271..04697f4 100644
--- a/eval.c
+++ b/eval.c
@@ -7444,6 +7444,9 @@ method_arity(method)
return INT2FIX(1);
case NODE_IVAR:
return INT2FIX(0);
+ case NODE_BMETHOD:
+ case NODE_DMETHOD:
+ return block_arity(method);
default:
body = body->nd_next; /* skip NODE_SCOPE */
if (nd_type(body) == NODE_BLOCK)