summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hints/solaris_2.sh2
-rw-r--r--perl.h11
-rw-r--r--pp.c2
3 files changed, 11 insertions, 4 deletions
diff --git a/hints/solaris_2.sh b/hints/solaris_2.sh
index 0965da50af..d6556d263f 100644
--- a/hints/solaris_2.sh
+++ b/hints/solaris_2.sh
@@ -48,7 +48,7 @@ esac
test -z "`${cc:-cc} -V 2>&1|grep -i workshop`" || ccisworkshop="$define"
test -z "`${cc:-cc} -v 2>&1|grep -i gcc`" || ccisgcc="$define"
-cat >UU/workshoplibpth.cbu<<EOCBU
+cat >UU/workshoplibpth.cbu<<'EOCBU'
case "$workshoplibpth_done" in
'') case "$use64bitall" in
"$define"|true|[yY]*)
diff --git a/perl.h b/perl.h
index d4d2292cca..2b4465c601 100644
--- a/perl.h
+++ b/perl.h
@@ -1145,8 +1145,15 @@ typedef NVTYPE NV;
# endif
# define NV_DIG LDBL_DIG
# ifdef HAS_SQRTL
-# define Perl_modf modfl
-# define Perl_frexp frexpl
+ /* libsunmath doesn't have modfl and frexpl as of mid-March 2000 */
+ /* XXX Configure probe for modfl and frexpl needed XXX */
+# if defined(__sun) && defined(__svr4)
+# define Perl_modf(x,y) ((long double)modf((double)(x),(double*)(y)))
+# define Perl_frexp(x) ((long double)frexp((double)(x)))
+# else
+# define Perl_modf modfl
+# define Perl_frexp frexpl
+# endif
# define Perl_cos cosl
# define Perl_sin sinl
# define Perl_sqrt sqrtl
diff --git a/pp.c b/pp.c
index 01a90e2855..30476bd750 100644
--- a/pp.c
+++ b/pp.c
@@ -1199,7 +1199,7 @@ PP(pp_ncmp)
{
dPOPTOPnnrl;
I32 value;
-#ifdef __osf__ /* XXX fix in 5.6.1 --jhi */
+#ifdef __osf__ /* XXX Configure probe for isnan and isnanl needed XXX */
#if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE)
#define Perl_isnan isnanl
#else