summaryrefslogtreecommitdiff
path: root/proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'proc.c')
-rw-r--r--proc.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/proc.c b/proc.c
index 2e9307e53e..9c62abb0c6 100644
--- a/proc.c
+++ b/proc.c
@@ -2671,7 +2671,7 @@ rb_method_entry_min_max_arity(const rb_method_entry_t *me, int *max)
*max = UNLIMITED_ARGUMENTS;
return 0;
case VM_METHOD_TYPE_OPTIMIZED: {
- switch (def->body.optimize_type) {
+ switch (def->body.optimized.type) {
case OPTIMIZED_METHOD_TYPE_SEND:
*max = UNLIMITED_ARGUMENTS;
return 0;
@@ -4087,14 +4087,10 @@ Init_Proc(void)
rb_undef_alloc_func(rb_cProc);
rb_define_singleton_method(rb_cProc, "new", rb_proc_s_new, -1);
- rb_add_method(rb_cProc, idCall, VM_METHOD_TYPE_OPTIMIZED,
- (void *)OPTIMIZED_METHOD_TYPE_CALL, METHOD_VISI_PUBLIC);
- rb_add_method(rb_cProc, rb_intern("[]"), VM_METHOD_TYPE_OPTIMIZED,
- (void *)OPTIMIZED_METHOD_TYPE_CALL, METHOD_VISI_PUBLIC);
- rb_add_method(rb_cProc, rb_intern("==="), VM_METHOD_TYPE_OPTIMIZED,
- (void *)OPTIMIZED_METHOD_TYPE_CALL, METHOD_VISI_PUBLIC);
- rb_add_method(rb_cProc, rb_intern("yield"), VM_METHOD_TYPE_OPTIMIZED,
- (void *)OPTIMIZED_METHOD_TYPE_CALL, METHOD_VISI_PUBLIC);
+ rb_add_method_optimized(rb_cProc, idCall, OPTIMIZED_METHOD_TYPE_CALL, 0, METHOD_VISI_PUBLIC);
+ rb_add_method_optimized(rb_cProc, rb_intern("[]"), OPTIMIZED_METHOD_TYPE_CALL, 0, METHOD_VISI_PUBLIC);
+ rb_add_method_optimized(rb_cProc, rb_intern("==="), OPTIMIZED_METHOD_TYPE_CALL, 0, METHOD_VISI_PUBLIC);
+ rb_add_method_optimized(rb_cProc, rb_intern("yield"), OPTIMIZED_METHOD_TYPE_CALL, 0, METHOD_VISI_PUBLIC);
#if 0 /* for RDoc */
rb_define_method(rb_cProc, "call", proc_call, -1);