From 2106d4d4464e1eea98e981fffcc19d91e67abc0f Mon Sep 17 00:00:00 2001 From: cremno Date: Fri, 15 May 2015 13:04:55 +0200 Subject: remove mrb_define_method_vm() function It isn't needed as it's very similar to mrb_define_method_raw() and also there's only one place where mrb_proc_ptr() actually has to be called. Inspired by @furunkel's method cache patch (#2764). --- src/vm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/vm.c') diff --git a/src/vm.c b/src/vm.c index f7103243d..a6324cf93 100644 --- a/src/vm.c +++ b/src/vm.c @@ -2303,8 +2303,9 @@ RETRY_TRY_BLOCK: /* A B R(A).newmethod(Syms(B),R(A+1)) */ int a = GETARG_A(i); struct RClass *c = mrb_class_ptr(regs[a]); + struct RProc *p = mrb_proc_ptr(regs[a+1]); - mrb_define_method_vm(mrb, c, syms[GETARG_B(i)], regs[a+1]); + mrb_define_method_raw(mrb, c, syms[GETARG_B(i)], p); ARENA_RESTORE(mrb, ai); NEXT; } -- cgit v1.2.3