diff --git a/ChangeLog b/ChangeLog index 51a7676e94..d277398409 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Wed Mar 11 22:36:34 2015 Koichi Sasada + + * eval.c (frame_called_id): it should use vm_ifunc type. + + * eval.c (frame_func_id): ditto. + Wed Mar 11 22:27:05 2015 Koichi Sasada * node.h: remove NODE_IFUNC, NEW_IFUNC. diff --git a/eval.c b/eval.c index 20c69db1b6..6e1afdfda1 100644 --- a/eval.c +++ b/eval.c @@ -946,8 +946,8 @@ frame_func_id(rb_control_frame_t *cfp) } while (iseq) { if (RUBY_VM_IFUNC_P(iseq)) { - NODE *ifunc = (NODE *)iseq; - if (ifunc->nd_aid) return ifunc->nd_aid; + const struct vm_ifunc *ifunc = (struct vm_ifunc *)iseq; + if (ifunc->id) return ifunc->id; return idIFUNC; } me_local = method_entry_of_iseq(cfp, iseq); @@ -976,8 +976,8 @@ frame_called_id(rb_control_frame_t *cfp) } while (iseq) { if (RUBY_VM_IFUNC_P(iseq)) { - NODE *ifunc = (NODE *)iseq; - if (ifunc->nd_aid) return ifunc->nd_aid; + const struct vm_ifunc *ifunc = (struct vm_ifunc *)iseq; + if (ifunc->id) return ifunc->id; return idIFUNC; } me_local = method_entry_of_iseq(cfp, iseq);