summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/mruby/value.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/mruby/value.h b/include/mruby/value.h
index 0bea02706..9ba714cae 100644
--- a/include/mruby/value.h
+++ b/include/mruby/value.h
@@ -75,7 +75,8 @@ typedef short mrb_sym;
# define PRIo64 "I64o"
# define PRIx64 "I64x"
# define PRIX64 "I64X"
-# define INFINITY ((float)(DBL_MAX * DBL_MAX))
+static unsigned int IEEE754_INFINITY_BITS_SINGLE = 0x7F800000;
+# define INFINITY (*(float *)&IEEE754_INFINITY_BITS_SINGLE)
# define NAN ((float)(INFINITY - INFINITY))
# else
# include <inttypes.h>