diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | eval.c | 8 |
2 files changed, 10 insertions, 4 deletions
@@ -1,3 +1,9 @@ +Wed Mar 11 22:36:34 2015 Koichi Sasada <ko1@atdot.net> + + * 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 <ko1@atdot.net> * node.h: remove NODE_IFUNC, NEW_IFUNC. @@ -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); |