summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/load.c4
-rw-r--r--src/parse.y2
-rw-r--r--src/vm.c12
3 files changed, 6 insertions, 12 deletions
diff --git a/src/load.c b/src/load.c
index 3d7b54eef..d6397d652 100644
--- a/src/load.c
+++ b/src/load.c
@@ -510,7 +510,7 @@ mrb_load_irep(mrb_state *mrb, const uint8_t *bin)
irep_error(mrb, n);
return mrb_nil_value();
}
- return mrb_context_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb));
+ return mrb_context_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb), 0);
}
#ifdef ENABLE_STDIO
@@ -760,6 +760,6 @@ mrb_load_irep_file(mrb_state *mrb, FILE* fp)
irep_error(mrb, n);
return mrb_nil_value();
}
- return mrb_context_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb));
+ return mrb_context_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb), 0);
}
#endif /* ENABLE_STDIO */
diff --git a/src/parse.y b/src/parse.y
index 12dcfa471..5f6a286ab 100644
--- a/src/parse.y
+++ b/src/parse.y
@@ -5388,7 +5388,7 @@ load_exec(mrb_state *mrb, parser_state *p, mrbc_context *c)
if (mrb->c->ci) {
mrb->c->ci->target_class = target;
}
- v = mrb_run(mrb, proc, mrb_top_self(mrb));
+ v = mrb_context_run(mrb, proc, mrb_top_self(mrb), 0);
if (mrb->exc) return mrb_nil_value();
return v;
}
diff --git a/src/vm.c b/src/vm.c
index d15358d42..d35ab59f2 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -546,8 +546,8 @@ void mrb_gv_val_set(mrb_state *mrb, mrb_sym sym, mrb_value val);
#define CALL_MAXARGS 127
-static mrb_value
-run_proc(mrb_state *mrb, struct RProc *proc, mrb_value self, unsigned int stack_keep)
+mrb_value
+mrb_context_run(mrb_state *mrb, struct RProc *proc, mrb_value self, unsigned int stack_keep)
{
/* mrb_assert(mrb_proc_cfunc_p(proc)) */
mrb_irep *irep = proc->body.irep;
@@ -2148,13 +2148,7 @@ run_proc(mrb_state *mrb, struct RProc *proc, mrb_value self, unsigned int stack_
mrb_value
mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self)
{
- return run_proc(mrb, proc, self, mrb->c->ci->argc + 2); /* argc + 2 (receiver and block) */
-}
-
-mrb_value
-mrb_context_run(mrb_state *mrb, struct RProc *proc, mrb_value self)
-{
- return run_proc(mrb, proc, self, proc->body.irep->nregs);
+ return mrb_context_run(mrb, proc, self, mrb->c->ci->argc + 2); /* argc + 2 (receiver and block) */
}
void