summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-07-07 03:00:01 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-07-07 03:00:01 +0000
commitc8c913c61538f9348cb35a91a10a5155d3a04edd (patch)
tree7d956061c40b137c18daf161666fc3f1f7f31013
parente4256538fd3488bbf0aef14124f7dfcf5027eb17 (diff)
merge revision(s) 44505: [Backport #9994]
numeric.c: isfinite * numeric.c (flo_is_finite_p): prefer C99 standard isfinite() than deprecated finite(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@46732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--configure.in2
-rw-r--r--numeric.c12
-rw-r--r--version.h2
3 files changed, 12 insertions, 4 deletions
diff --git a/configure.in b/configure.in
index 6ea414ece0..21e996bc4d 100644
--- a/configure.in
+++ b/configure.in
@@ -1674,7 +1674,7 @@ AC_CHECK_FUNCS(fmod killpg wait4 waitpid fork spawnv syscall __syscall chroot ge
setuid setgid daemon select_large_fdset setenv unsetenv\
mktime timegm gmtime_r clock_gettime gettimeofday poll ppoll\
pread sendfile shutdown sigaltstack dl_iterate_phdr\
- dup dup3 pipe2 posix_memalign memalign ioctl)
+ dup dup3 pipe2 posix_memalign memalign ioctl isfinite)
AC_CACHE_CHECK(for unsetenv returns a value, rb_cv_unsetenv_return_value,
[AC_TRY_COMPILE([
diff --git a/numeric.c b/numeric.c
index 2c15e2fbe9..e3a1a8c458 100644
--- a/numeric.c
+++ b/numeric.c
@@ -30,6 +30,14 @@
#include <ieeefp.h>
#endif
+#if !defined HAVE_ISFINITE && !defined isfinite
+#if defined HAVE_FINITE && !defined finite && !defined _WIN32
+extern int finite(double);
+# define HAVE_ISFINITE 1
+# define isfinite(x) finite(x)
+#endif
+#endif
+
/* use IEEE 64bit values if not defined */
#ifndef FLT_RADIX
#define FLT_RADIX 2
@@ -1482,8 +1490,8 @@ flo_is_finite_p(VALUE num)
{
double value = RFLOAT_VALUE(num);
-#if HAVE_FINITE
- if (!finite(value))
+#if HAVE_ISFINITE
+ if (!isfinite(value))
return Qfalse;
#else
if (isinf(value) || isnan(value))
diff --git a/version.h b/version.h
index 062ffbb179..603339f3d9 100644
--- a/version.h
+++ b/version.h
@@ -1,6 +1,6 @@
#define RUBY_VERSION "2.0.0"
#define RUBY_RELEASE_DATE "2014-07-07"
-#define RUBY_PATCHLEVEL 516
+#define RUBY_PATCHLEVEL 517
#define RUBY_RELEASE_YEAR 2014
#define RUBY_RELEASE_MONTH 7