* eval.c (frame_func_id): use predefined IDs.
* vm.c (rb_vm_control_frame_id_and_class): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2013-05-01 02:40:41 +00:00
Родитель 84ad7e65ef
Коммит 7ef7a65df6
3 изменённых файлов: 8 добавлений и 4 удалений

Просмотреть файл

@ -1,9 +1,13 @@
Wed May 1 11:38:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
Wed May 1 11:40:25 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* defs/id.def (predefined): add "idProc".
* eval.c (frame_func_id): use predefined IDs.
* proc.c (mnew, mproc, mlambda): use predefined IDs.
* vm.c (rb_vm_control_frame_id_and_class): ditto.
* vm.c (Init_VM): ditto.
Tue Apr 30 23:18:00 2013 Zachary Scott <zachary@zacharyscott.net>

4
eval.c
Просмотреть файл

@ -860,7 +860,7 @@ frame_func_id(rb_control_frame_t *cfp)
if (RUBY_VM_IFUNC_P(iseq)) {
NODE *ifunc = (NODE *)iseq;
if (ifunc->nd_aid) return ifunc->nd_aid;
return rb_intern("<ifunc>");
return idIFUNC;
}
me_local = method_entry_of_iseq(cfp, iseq);
if (me_local) {
@ -890,7 +890,7 @@ frame_called_id(rb_control_frame_t *cfp)
if (RUBY_VM_IFUNC_P(iseq)) {
NODE *ifunc = (NODE *)iseq;
if (ifunc->nd_aid) return ifunc->nd_aid;
return rb_intern("<ifunc>");
return idIFUNC;
}
me_local = method_entry_of_iseq(cfp, iseq);
if (me_local) {

2
vm.c
Просмотреть файл

@ -1460,7 +1460,7 @@ rb_vm_control_frame_id_and_class(const rb_control_frame_t *cfp, ID *idp, VALUE *
}
while (iseq) {
if (RUBY_VM_IFUNC_P(iseq)) {
if (idp) CONST_ID(*idp, "<ifunc>");
if (idp) *idp = idIFUNC;
if (klassp) *klassp = 0;
return 1;
}