summaryrefslogtreecommitdiff
path: root/ext/List
diff options
context:
space:
mode:
Diffstat (limited to 'ext/List')
-rw-r--r--ext/List/Util/ChangeLog20
-rw-r--r--ext/List/Util/Util.xs21
-rw-r--r--ext/List/Util/lib/List/Util.pm8
-rw-r--r--ext/List/Util/lib/Scalar/Util.pm5
4 files changed, 53 insertions, 1 deletions
diff --git a/ext/List/Util/ChangeLog b/ext/List/Util/ChangeLog
index 3d2295b4ae..5ab668b155 100644
--- a/ext/List/Util/ChangeLog
+++ b/ext/List/Util/ChangeLog
@@ -1,3 +1,23 @@
+Change 645 on 2001/09/07 by <gbarr@pobox.com> (Graham Barr)
+
+ Some platforms require the main executable to export symbols
+ needed by modules. In 5.7.2 and prior releases of perl
+ Perl_cxinc was not exported so we need to duplicate its
+ functionality
+
+Change 644 on 2001/09/07 by <gbarr@pobox.com> (Graham Barr)
+
+ Generate a typemap for NV for all perl version up to and
+ including 5.006
+
+Change 643 on 2001/09/07 by <gbarr@pobox.com> (Graham Barr)
+
+ Document problems known with specific versions of perl
+
+Change 642 on 2001/09/05 by <gbarr@pobox.com> (Graham Barr)
+
+ Release 1.05
+
Change 641 on 2001/09/05 by <gbarr@pobox.com> (Graham Barr)
Fix shuffle() to compile with threaded perl
diff --git a/ext/List/Util/Util.xs b/ext/List/Util/Util.xs
index 20b6319d40..92ee08499e 100644
--- a/ext/List/Util/Util.xs
+++ b/ext/List/Util/Util.xs
@@ -16,6 +16,27 @@
#ifndef aTHX
# define aTHX
+# define pTHX
+#endif
+
+/* Some platforms have strict exports. And before 5.7.3 cxinc (or Perl_cxinc)
+ was not exported. Therefore platforms like win32, VMS etc have problems
+ so we redefine it here -- GMB
+*/
+#if PERL_VERSION < 7
+/* Not in 5.6.1. */
+# define SvUOK(sv) SvIOK_UV(sv)
+# ifdef cxinc
+# undef cxinc
+# endif
+# define cxinc() my_cxinc(aTHX)
+static I32
+my_cxinc(pTHX)
+{
+ cxstack_max = cxstack_max * 3 / 2;
+ Renew(cxstack, cxstack_max + 1, struct context); /* XXX should fix CXINC macro */
+ return cxstack_ix + 1;
+}
#endif
#if PERL_VERSION < 6
diff --git a/ext/List/Util/lib/List/Util.pm b/ext/List/Util/lib/List/Util.pm
index b61e13c28e..91dbcdb7b6 100644
--- a/ext/List/Util/lib/List/Util.pm
+++ b/ext/List/Util/lib/List/Util.pm
@@ -11,7 +11,7 @@ require DynaLoader;
our @ISA = qw(Exporter DynaLoader);
our @EXPORT_OK = qw(first min max minstr maxstr reduce sum shuffle);
-our $VERSION = "1.05_00";
+our $VERSION = "1.06_00";
bootstrap List::Util $VERSION;
@@ -148,6 +148,12 @@ This function could be implemented using C<reduce> like this
=back
+=head1 KNOWN BUGS
+
+With perl versions prior to 5.005 there are some cases where reduce
+will return an incorrect result. This will show up as test 7 of
+reduce.t failing.
+
=head1 SUGGESTED ADDITIONS
The following are additions that have been requested, but I have been reluctant
diff --git a/ext/List/Util/lib/Scalar/Util.pm b/ext/List/Util/lib/Scalar/Util.pm
index 432361f28c..1329d1a48a 100644
--- a/ext/List/Util/lib/Scalar/Util.pm
+++ b/ext/List/Util/lib/Scalar/Util.pm
@@ -115,6 +115,11 @@ prevent the object being DESTROY-ed at its usual time.
=back
+=head1 KNOWN BUGS
+
+There is a bug in perl5.6.0 with UV's that are >= 1<<31. This will
+show up as tests 8 and 9 of dualvar.t failing
+
=head1 COPYRIGHT
Copyright (c) 1997-2001 Graham Barr <gbarr@pobox.com>. All rights reserved.