From 9c3c560ba6bc15821847ad7cb7e9463f1d0126d0 Mon Sep 17 00:00:00 2001 From: Jarkko Hietaniemi Date: Sun, 13 Jan 2002 19:19:59 +0000 Subject: Upgrade to Scalar-List-Util 1.06. The Makefile.PLs have diverged quite a bit so no updates there. p4raw-id: //depot/perl@14245 --- ext/List/Util/ChangeLog | 20 ++++++++++++++++++++ ext/List/Util/Util.xs | 21 +++++++++++++++++++++ ext/List/Util/lib/List/Util.pm | 8 +++++++- ext/List/Util/lib/Scalar/Util.pm | 5 +++++ 4 files changed, 53 insertions(+), 1 deletion(-) (limited to 'ext/List') 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 (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 (Graham Barr) + + Generate a typemap for NV for all perl version up to and + including 5.006 + +Change 643 on 2001/09/07 by (Graham Barr) + + Document problems known with specific versions of perl + +Change 642 on 2001/09/05 by (Graham Barr) + + Release 1.05 + Change 641 on 2001/09/05 by (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 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 . All rights reserved. -- cgit v1.2.1