adjust fallback INFINITY definition for FLT_EVAL_METHOD==2 case
authorRich Felker <dalias@aerifal.cx>
Wed, 27 Nov 2013 04:26:37 +0000 (23:26 -0500)
committerRich Felker <dalias@aerifal.cx>
Wed, 27 Nov 2013 04:26:37 +0000 (23:26 -0500)
on archs with excess precision, the floating point constant 1e40f may
be evaluated such that it does not actually produce an infinity.
1e5000f is sufficiently large to produce an infinity for all supported
floating point formats. note that this definition of INFINITY is only
used for old or non-GNUC compilers anyway; despite being a portable,
conforming definition, it leads to erroneous warnings on many
compilers and thus using the builtin is preferred.

include/math.h

index ec04a8a..bbee62e 100644 (file)
@@ -16,7 +16,7 @@ extern "C" {
 #define INFINITY  __builtin_inff()
 #else
 #define NAN       (0.0f/0.0f)
-#define INFINITY  1e40f
+#define INFINITY  1e5000f
 #endif
 
 #define HUGE_VALF INFINITY