summaryrefslogtreecommitdiff
path: root/iseq.c
diff options
context:
space:
mode:
Diffstat (limited to 'iseq.c')
-rw-r--r--iseq.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/iseq.c b/iseq.c
index 78e33b0d96..9fb82d49c6 100644
--- a/iseq.c
+++ b/iseq.c
@@ -1792,12 +1792,7 @@ rb_iseq_parameters(const rb_iseq_t *iseq, int is_proc)
rb_ary_push(args, PARAM(i, req));
}
}
- r = iseq->arg_rest != -1 ? iseq->arg_rest :
- iseq->arg_post_len > 0 ? iseq->arg_post_start :
- iseq->arg_block != -1 ? iseq->arg_block :
- iseq->arg_keyword != -1 ? iseq->arg_keyword :
- iseq->arg_size;
- if (iseq->arg_keyword != -1) r -= iseq->arg_keywords;
+ r = iseq->argc + iseq->arg_opts - 1;
for (; i < r; i++) {
PARAM_TYPE(opt);
if (rb_id2str(PARAM_ID(i))) {