summaryrefslogtreecommitdiff
path: root/sv.c
diff options
context:
space:
mode:
authorRafael Garcia-Suarez <rgarciasuarez@gmail.com>2007-09-12 11:48:32 +0000
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2007-09-12 11:48:32 +0000
commit5edc65b39b6317e0ab48cabbe2834afad4b21a9a (patch)
treee4d4ebd18096f9d624131116dbfaa01fd8fcc1e9 /sv.c
parent03e3a31924f12b508d22debad27f3900a3277300 (diff)
downloadperl-5edc65b39b6317e0ab48cabbe2834afad4b21a9a.tar.gz
Amend change 31854 for when NAN_COMPARE_BROKEN
p4raw-id: //depot/perl@31855
Diffstat (limited to 'sv.c')
-rw-r--r--sv.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sv.c b/sv.c
index a2646f758c..1933945dcd 100644
--- a/sv.c
+++ b/sv.c
@@ -9194,7 +9194,12 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV
: SvNV(argsv);
need = 0;
- if (c != 'e' && c != 'E' && nv == nv) {
+#if defined(NAN_COMPARE_BROKEN) && defined(Perl_isnan)
+ if (c != 'e' && c != 'E' && !Perl_isnan(nv))
+#else
+ if (c != 'e' && c != 'E' && nv == nv)
+#endif
+ {
i = PERL_INT_MIN;
/* FIXME: if HAS_LONG_DOUBLE but not USE_LONG_DOUBLE this
will cast our (long double) to (double) */