1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* vm.c (vm_eval_body): initialize retval. [ruby-dev:34576]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2008-05-07 08:41:16 +00:00
parent c4d11b0525
commit 42981462c9
2 changed files with 8 additions and 2 deletions

View file

@ -1,3 +1,7 @@
Wed May 7 17:41:14 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm.c (vm_eval_body): initialize retval. [ruby-dev:34576]
Wed May 7 13:02:56 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big_fdiv): flo.fdiv(NaN) should result NaN.

6
vm.c
View file

@ -911,8 +911,9 @@ vm_make_jump_tag_but_local_jump(int state, VALUE val)
{
VALUE result = Qnil;
if (val == Qundef)
if (val == Qundef) {
val = GET_THREAD()->tag->retval;
}
switch (state) {
case 0:
break;
@ -1140,8 +1141,10 @@ vm_eval_body(rb_thread_t *th)
int state;
VALUE result, err;
VALUE initial = 0;
VALUE *escape_dfp = NULL;
TH_PUSH_TAG(th);
_tag.retval = Qnil;
if ((state = EXEC_TAG()) == 0) {
vm_loop_start:
result = vm_eval(th, initial);
@ -1157,7 +1160,6 @@ vm_eval_body(rb_thread_t *th)
unsigned long epc, cont_pc, cont_sp;
VALUE catch_iseqval;
rb_control_frame_t *cfp;
VALUE *escape_dfp = NULL;
VALUE type;
err = th->errinfo;