diff options
Diffstat (limited to 'proc.c')
-rw-r--r-- | proc.c | 6 |
1 files changed, 2 insertions, 4 deletions
@@ -1350,7 +1350,8 @@ rb_mod_define_method(int argc, VALUE *argv, VALUE mod) id = rb_to_id(argv[0]); body = rb_block_lambda(); } - else if (argc == 2) { + else { + rb_check_arity(argc, 1, 2); id = rb_to_id(argv[0]); body = argv[1]; if (!rb_obj_is_method(body) && !rb_obj_is_proc(body)) { @@ -1359,9 +1360,6 @@ rb_mod_define_method(int argc, VALUE *argv, VALUE mod) rb_obj_classname(body)); } } - else { - rb_raise(rb_eArgError, "wrong number of arguments (%d for 1)", argc); - } if (rb_obj_is_method(body)) { struct METHOD *method = (struct METHOD *)DATA_PTR(body); |