diff --git a/src/vm.c b/src/vm.c index ba320d962..5facaed25 100644 --- a/src/vm.c +++ b/src/vm.c @@ -2310,9 +2310,9 @@ RETRY_TRY_BLOCK: mrb_int y = mrb_fixnum(regs[a+1]); double f; if (y == 0) { - if (x == 0) f = NAN; - else if (x > 0) f = INFINITY; + if (x > 0) f = INFINITY; else if (x < 0) f = -INFINITY; + else /* if (x == 0) */ f = NAN; } else { f = (mrb_float)x / (mrb_float)y;