diff --git a/proc.c b/proc.c index 0143ccd..74f178a 100644 --- a/proc.c +++ b/proc.c @@ -302,16 +302,10 @@ binding_clone(VALUE self) } VALUE -rb_binding_new_with_cfp(rb_thread_t *th, const rb_control_frame_t *src_cfp) -{ - return rb_vm_make_binding(th, src_cfp); -} - -VALUE rb_binding_new(void) { rb_thread_t *th = GET_THREAD(); - return rb_binding_new_with_cfp(th, th->cfp); + return rb_vm_make_binding(th, th->cfp); } /* diff --git a/vm_backtrace.c b/vm_backtrace.c index 9948654..3ea21d4 100644 --- a/vm_backtrace.c +++ b/vm_backtrace.c @@ -1146,7 +1146,7 @@ collect_caller_bindings(rb_thread_t *th) if (!NIL_P(cfp_val)) { rb_control_frame_t *cfp = GC_GUARDED_PTR_REF(cfp_val); - rb_ary_store(entry, CALLER_BINDING_BINDING, rb_binding_new_with_cfp(th, cfp)); + rb_ary_store(entry, CALLER_BINDING_BINDING, rb_vm_make_binding(th, cfp)); } } diff --git a/vm_core.h b/vm_core.h index 9c2c87e..2aad435 100644 --- a/vm_core.h +++ b/vm_core.h @@ -911,7 +911,6 @@ VALUE rb_vm_make_proc(rb_thread_t *th, const rb_block_t *block, VALUE klass); VALUE rb_vm_make_binding(rb_thread_t *th, const rb_control_frame_t *src_cfp); VALUE rb_vm_make_env_object(rb_thread_t *th, rb_control_frame_t *cfp); VALUE rb_vm_env_local_variables(VALUE envval); -VALUE rb_binding_new_with_cfp(rb_thread_t *th, const rb_control_frame_t *src_cfp); VALUE *rb_binding_add_dynavars(rb_binding_t *bind, int dyncount, const ID *dynvars); void rb_vm_inc_const_missing_count(void); void rb_vm_gvl_destroy(rb_vm_t *vm); diff --git a/vm_trace.c b/vm_trace.c index c410be7..d84f924 100644 --- a/vm_trace.c +++ b/vm_trace.c @@ -811,7 +811,7 @@ rb_tracearg_binding(rb_trace_arg_t *trace_arg) cfp = rb_vm_get_binding_creatable_next_cfp(trace_arg->th, trace_arg->cfp); if (cfp) { - return rb_binding_new_with_cfp(trace_arg->th, cfp); + return rb_vm_make_binding(trace_arg->th, cfp); } else { return Qnil;