diff options
Diffstat (limited to 'vm_eval.c')
-rw-r--r-- | vm_eval.c | 11 |
1 files changed, 2 insertions, 9 deletions
@@ -1949,16 +1949,9 @@ catch_i(VALUE tag, VALUE data) */ static VALUE -rb_f_catch(int argc, VALUE *argv) +rb_f_catch(int argc, VALUE *argv, VALUE self) { - VALUE tag; - - if (argc == 0) { - tag = rb_obj_alloc(rb_cObject); - } - else { - rb_scan_args(argc, argv, "01", &tag); - } + VALUE tag = rb_check_arity(argc, 0, 1) ? argv[0] : rb_obj_alloc(rb_cObject); return rb_catch_obj(tag, catch_i, 0); } |