зеркало из https://github.com/github/ruby.git
* compile.c (iseq_compile_each/NODE_RETURN): fix stack consistency.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
9a82a62937
Коммит
f5e7602c33
|
@ -1,3 +1,7 @@
|
||||||
|
Thu Dec 20 09:40:51 2007 Koichi Sasada <ko1@atdot.net>
|
||||||
|
|
||||||
|
* compile.c (iseq_compile_each/NODE_RETURN): fix stack consistency.
|
||||||
|
|
||||||
Thu Dec 20 09:42:11 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
|
Thu Dec 20 09:42:11 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||||
|
|
||||||
* bignum.c (big2str_orig): access beyond memory region cause crash
|
* bignum.c (big2str_orig): access beyond memory region cause crash
|
||||||
|
|
|
@ -3804,12 +3804,13 @@ iseq_compile_each(rb_iseq_t *iseq, LINK_ANCHOR *ret, NODE * node, int poped)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
ADD_INSN1(ret, nd_line(node), throw, INT2FIX(0x01) /* TAG_RETURN */ );
|
ADD_INSN1(ret, nd_line(node), throw, INT2FIX(0x01) /* TAG_RETURN */ );
|
||||||
ADD_INSN(ret, nd_line(node), pop);
|
if (poped) {
|
||||||
|
ADD_INSN(ret, nd_line(node), pop);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case NODE_YIELD:{
|
case NODE_YIELD:{
|
||||||
|
|
Загрузка…
Ссылка в новой задаче