diff options
Diffstat (limited to 'src/proc.c')
| -rw-r--r-- | src/proc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/proc.c b/src/proc.c index a61296ed4..1511725d9 100644 --- a/src/proc.c +++ b/src/proc.c @@ -156,6 +156,12 @@ mrb_proc_arity(mrb_state *mrb, mrb_value self) // TODO cfunc aspec not implemented yet return mrb_fixnum_value(-1); } + + // arity is depend on OP_ENTER + if (GET_OPCODE(*iseq) != OP_ENTER) { + return mrb_fixnum_value(0); + } + aspec = GETARG_Ax(*iseq); ma = MRB_ASPEC_REQ(aspec); ra = MRB_ASPEC_REST(aspec); |
