aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/test
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2014-10-28 11:42:58 +0100
committerLukas Larsson <[email protected]>2014-10-28 11:42:58 +0100
commit3a4433d67cb2f14c5ed69e8eae7b772eebcaa30b (patch)
treef23b51e249fbf6cae8cb7377b61d38cd8d574d0e /erts/emulator/test
parent3f5685c7354dc481294013cf86d2f9621300c139 (diff)
parent4d73c647b55977d23c4295073945bd8aeb91ff83 (diff)
downloadotp-3a4433d67cb2f14c5ed69e8eae7b772eebcaa30b.tar.gz
otp-3a4433d67cb2f14c5ed69e8eae7b772eebcaa30b.tar.bz2
otp-3a4433d67cb2f14c5ed69e8eae7b772eebcaa30b.zip
Merge branch 'sv/isfinite/OTP-12268' into maint
* sv/isfinite/OTP-12268: Use isfinite() instead of finite() when available
Diffstat (limited to 'erts/emulator/test')
-rw-r--r--erts/emulator/test/float_SUITE_data/fp_drv.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/erts/emulator/test/float_SUITE_data/fp_drv.c b/erts/emulator/test/float_SUITE_data/fp_drv.c
index b80385c3f9..82d18d6440 100644
--- a/erts/emulator/test/float_SUITE_data/fp_drv.c
+++ b/erts/emulator/test/float_SUITE_data/fp_drv.c
@@ -29,9 +29,14 @@
#if defined (__GNUC__)
int _finite(double x);
#endif
-#ifndef finite
-#define finite _finite
+#ifndef isfinite
+#define isfinite _finite
#endif
+#elif !defined(HAVE_ISFINITE) && defined(HAVE_FINITE)
+/* If not windows and we do not have isfinite */
+#define isfinite finite
+#elif !defined(HAVE_ISFINITE)
+# error "No finite function found!"
#endif
#include "erl_driver.h"
@@ -79,21 +84,21 @@ do_test(void *unused)
x = 3.23e133;
y = 3.57e257;
z = x*y;
- if (finite(z))
+ if (isfinite(z))
return "is finite (1)";
x = 5.0;
y = 0.0;
z = x/y;
- if (finite(z))
+ if (isfinite(z))
return "is finite (2)";
z = log(-1.0);
- if (finite(z))
+ if (isfinite(z))
return "is finite (3)";
z = log(0.0);
- if (finite(z))
+ if (isfinite(z))
return "is finite (4)";
return "ok";