summaryrefslogtreecommitdiffhomepage
path: root/src/numeric.c
diff options
context:
space:
mode:
authorcremno <[email protected]>2014-05-04 01:50:17 +0200
committercremno <[email protected]>2014-05-04 01:50:17 +0200
commit86cfcd20d60b8314200062d1f5abd59b77ee7ff7 (patch)
tree14676700258a5c36bb81b834b5a2b43494fd0e13 /src/numeric.c
parent8e4d3bb94e869679486ebeaefcc586b4e3ed5cb7 (diff)
downloadmruby-86cfcd20d60b8314200062d1f5abd59b77ee7ff7.tar.gz
mruby-86cfcd20d60b8314200062d1f5abd59b77ee7ff7.zip
simply use `isfinite`
Diffstat (limited to 'src/numeric.c')
-rw-r--r--src/numeric.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/numeric.c b/src/numeric.c
index 4c955a61e..56835edbf 100644
--- a/src/numeric.c
+++ b/src/numeric.c
@@ -309,7 +309,7 @@ flodivmod(mrb_state *mrb, mrb_float x, mrb_float y, mrb_float *divp, mrb_float *
}
else {
mod = fmod(x, y);
- if (isinf(x) && !isinf(y) && !isnan(y))
+ if (isinf(x) && isfinite(y))
div = x;
else
div = (x - mod) / y;
@@ -495,7 +495,7 @@ flo_finite_p(mrb_state *mrb, mrb_value num)
{
mrb_float value = mrb_float(num);
- return mrb_bool_value(!(isinf(value) || isnan(value)));
+ return mrb_bool_value(isfinite(value));
}
/* 15.2.9.3.10 */
@@ -626,7 +626,7 @@ flo_round(mrb_state *mrb, mrb_value num)
}
if (ndigits > 0) {
- if (isinf(number) || isnan(number)) return num;
+ if (!isfinite(number)) return num;
return mrb_float_value(mrb, number);
}
return mrb_fixnum_value((mrb_int)number);