This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Fix infnan.t Win32 failure.
authorJarkko Hietaniemi <jhi@iki.fi>
Fri, 22 Aug 2014 20:42:22 +0000 (16:42 -0400)
committerJarkko Hietaniemi <jhi@iki.fi>
Fri, 22 Aug 2014 20:57:41 +0000 (16:57 -0400)
perl.h

diff --git a/perl.h b/perl.h
index dd2c37a..adb1f24 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -2180,7 +2180,9 @@ int isnan(double d);
 #endif
 
 #ifndef Perl_isinf
-#   if defined(Perl_isfinite) && defined(Perl_isnan)
+#   if defined(Perl_fp_class_inf)
+#       define Perl_isinf(x) Perl_fp_class_inf(x)
+#   elif defined(Perl_isfinite) && defined(Perl_isnan)
 #       define Perl_isinf(x) !(Perl_isfinite(x)||Perl_isnan(x))
 #   endif
 #endif
@@ -3993,6 +3995,15 @@ START_EXTERN_C
 END_EXTERN_C
 #endif
 
+#ifdef WIN32
+#  if !defined(NV_INF) && defined(HUGE_VAL)
+#    define NV_INF HUGE_VAL
+#  endif
+#  ifndef NV_NAN
+#    define NV_NAN (NV_INF-NV_INF)
+#  endif
+#endif
+
 #if !defined(NV_INF) && defined(USE_LONG_DOUBLE) && defined(LDBL_INFINITY)
 #  define NV_INF LDBL_INFINITY
 #endif
@@ -4041,6 +4052,9 @@ END_EXTERN_C
 #if !defined(NV_NAN) && defined(NAN)
 #  define NV_NAN (NV)NAN
 #endif
+#if !defined(NV_NAN) && defined(NV_INF)
+#  define NV_NAN (NV_INF-NV_INF)
+#endif
 
 #ifndef __cplusplus
 #  if !defined(WIN32) && !defined(VMS)