summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/ruby/missing.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/ruby/missing.h b/include/ruby/missing.h
index dc3fd502b5..2d3852c131 100644
--- a/include/ruby/missing.h
+++ b/include/ruby/missing.h
@@ -168,6 +168,8 @@ RUBY_EXTERN const union bytesequence4_or_float rb_nan;
# include <ieeefp.h>
# endif
# define isinf(x) (!finite(x) && !isnan(x))
+# elif __cplusplus >= 201103L
+# include <cmath> // it must include constexpr bool isinf(double);
# else
RUBY_EXTERN int isinf(double);
# endif
@@ -176,7 +178,11 @@ RUBY_EXTERN int isinf(double);
#ifndef isnan
# ifndef HAVE_ISNAN
+# if __cplusplus >= 201103L
+# include <cmath> // it must include constexpr bool isnan(double);
+# else
RUBY_EXTERN int isnan(double);
+# endif
# endif
#endif