summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changes351
-rw-r--r--MANIFEST1
-rw-r--r--Makefile.SH7
-rw-r--r--ext/B/t/o.t76
-rwxr-xr-xext/DB_File/t/db-btree.t2
-rw-r--r--ext/Encode/Encode.xs4
-rw-r--r--ext/threads/shared/queue.pm82
-rw-r--r--patchlevel.h2
-rw-r--r--pod/perlhack.pod41
-rw-r--r--pod/perltoc.pod452
-rwxr-xr-xt/TEST9
-rw-r--r--t/harness8
12 files changed, 880 insertions, 155 deletions
diff --git a/Changes b/Changes
index e50f8c1929..71ee164c53 100644
--- a/Changes
+++ b/Changes
@@ -28,6 +28,357 @@ example from http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/
Version v5.7.X Development release working toward v5.8
--------------
____________________________________________________________________________
+[ 16538] By: jhi on 2002/05/10 15:08:51
+ Log: Regen toc.
+ Branch: perl
+ ! pod/perltoc.pod
+____________________________________________________________________________
+[ 16537] By: jhi on 2002/05/10 15:06:52
+ Log: Move pod, add $VERSION.
+ Branch: perl
+ ! ext/threads/shared/queue.pm
+____________________________________________________________________________
+[ 16536] By: jhi on 2002/05/10 14:42:10
+ Log: Unused variables.
+ Branch: perl
+ ! ext/Encode/Encode.xs
+____________________________________________________________________________
+[ 16535] By: jhi on 2002/05/10 13:52:34
+ Log: Subject: Re: [REPATCH MANIFEST ext/B/t/o.t] Add tests for O
+ From: chromatic <chromatic@rmci.net>
+ Date: Fri, 10 May 2002 07:43:25 -0700
+ Message-ID: <20020510144325.26245.qmail@firewheel>
+ Branch: perl
+ + ext/B/t/o.t
+ ! MANIFEST
+____________________________________________________________________________
+[ 16534] By: jhi on 2002/05/10 13:48:10
+ Log: Don't do JAPHs unless doing "make torturetest".
+ Document the less obvious make test targets.
+ Branch: perl
+ ! Makefile.SH pod/perlhack.pod t/TEST t/harness
+____________________________________________________________________________
+[ 16533] By: nick on 2002/05/10 06:02:58
+ Log: Integrate mainline
+ Branch: perlio
+ !> Configure Porting/pumpkin.pod doio.c ext/Encode/Encode.xs
+ !> ext/Encode/Unicode/Unicode.xs ext/IO/IO.xs ext/Storable/README
+ !> ext/Storable/Storable.pm ext/Storable/Storable.xs
+ !> ext/Time/HiRes/HiRes.xs ext/threads/shared/shared.xs
+ !> ext/threads/shared/t/cond.t ext/threads/threads.xs
+ !> pod/perlfaq3.pod pod/perlfaq4.pod pod/perlhack.pod
+ !> pod/perllocale.pod pp_sys.c reentr.pl t/op/tie.t
+ !> t/run/fresh_perl.t util.c
+____________________________________________________________________________
+[ 16532] By: jhi on 2002/05/10 03:38:40
+ Log: Subject: [PATCH] format and other warnings
+ From: Robin Barker <rmb1@cise.npl.co.uk>
+ Date: Thu, 9 May 2002 18:27:30 +0100 (BST)
+ Message-Id: <200205091727.SAA22792@tempest.npl.co.uk>
+ Branch: perl
+ ! Porting/pumpkin.pod ext/Encode/Encode.xs
+ ! ext/Encode/Unicode/Unicode.xs ext/Storable/Storable.xs
+ ! ext/Time/HiRes/HiRes.xs ext/threads/shared/shared.xs
+ ! ext/threads/threads.xs
+____________________________________________________________________________
+[ 16531] By: jhi on 2002/05/10 03:26:11
+ Log: Move the noisy tie core dump test to fresh_perl from op/tie.
+ Branch: perl
+ ! t/op/tie.t t/run/fresh_perl.t
+____________________________________________________________________________
+[ 16530] By: jhi on 2002/05/10 03:23:17
+ Log: Subject: Re: [PATCH] Re: perl@16433
+ From: sthoenna@efn.org (Yitzchak Scott-Thoennes)
+ Date: Thu, 09 May 2002 16:24:59 -0700
+ Message-ID: <LVw28gzkguhE092yn@efn.org>
+ Branch: perl
+ ! t/op/tie.t
+____________________________________________________________________________
+[ 16529] By: jhi on 2002/05/09 21:39:04
+ Log: Subject: [PATCH ext/threads/shared/t/cond.t] Re: where threads cond.t hangs
+ From: Dave Mitchell <davem@fdgroup.com>
+ Date: Thu, 9 May 2002 17:18:42 +0100
+ Message-ID: <20020509171842.C9836@fdgroup.com>
+ Branch: perl
+ ! ext/threads/shared/t/cond.t
+____________________________________________________________________________
+[ 16528] By: nick on 2002/05/09 16:40:39
+ Log: Integrate maint branch io (pipe) fixes.
+ Branch: perl
+ !> doio.c pp_sys.c util.c
+____________________________________________________________________________
+[ 16527] By: jhi on 2002/05/09 14:09:00
+ Log: FAQ sync.
+ Branch: perl
+ ! pod/perlfaq3.pod pod/perlfaq4.pod
+____________________________________________________________________________
+[ 16526] By: jhi on 2002/05/09 14:06:53
+ Log: metaconfig unit changes for #16525, plus extra linting.
+ Branch: metaconfig
+ ! U/compline/ptrsize.U U/protos/Protochk.U
+ ! U/threads/d_asctime_r.U U/threads/d_crypt_r.U
+ ! U/threads/d_ctermid_r.U U/threads/d_ctime_r.U
+ ! U/threads/d_drand48_r.U U/threads/d_endgrent_r.U
+ ! U/threads/d_endhostent_r.U U/threads/d_endnetent_r.U
+ ! U/threads/d_endprotoent_r.U U/threads/d_endpwent_r.U
+ ! U/threads/d_endservent_r.U U/threads/d_getgrent_r.U
+ ! U/threads/d_getgrgid_r.U U/threads/d_getgrnam_r.U
+ ! U/threads/d_gethostbyaddr_r.U U/threads/d_gethostbyname_r.U
+ ! U/threads/d_gethostent_r.U U/threads/d_getlogin_r.U
+ ! U/threads/d_getnetbyaddr_r.U U/threads/d_getnetbyname_r.U
+ ! U/threads/d_getnetent_r.U U/threads/d_getprotobyname_r.U
+ ! U/threads/d_getprotobynumber_r.U U/threads/d_getprotoent_r.U
+ ! U/threads/d_getpwent_r.U U/threads/d_getpwnam_r.U
+ ! U/threads/d_getpwuid_r.U U/threads/d_getservbyname_r.U
+ ! U/threads/d_getservbyport_r.U U/threads/d_getservent_r.U
+ ! U/threads/d_getspnam_r.U U/threads/d_gmtime_r.U
+ ! U/threads/d_localtime_r.U U/threads/d_random_r.U
+ ! U/threads/d_readdir64_r.U U/threads/d_readdir_r.U
+ ! U/threads/d_setgrent_r.U U/threads/d_sethostent_r.U
+ ! U/threads/d_setlocale_r.U U/threads/d_setnetent_r.U
+ ! U/threads/d_setprotoent_r.U U/threads/d_setpwent_r.U
+ ! U/threads/d_setservent_r.U U/threads/d_srand48_r.U
+ ! U/threads/d_srandom_r.U U/threads/d_strerror_r.U
+ ! U/threads/d_tmpnam_r.U U/threads/d_ttyname_r.U
+____________________________________________________________________________
+[ 16525] By: jhi on 2002/05/09 14:06:11
+ Log: metaconfig unit linting.
+ Branch: perl
+ ! reentr.pl
+____________________________________________________________________________
+[ 16524] By: jhi on 2002/05/09 13:49:01
+ Log: metaconfig unit changes for #16523.
+ Branch: metaconfig
+ ! U/compline/ptrsize.U
+ Branch: metaconfig/U/perl
+ ! use64bits.U
+____________________________________________________________________________
+[ 16523] By: jhi on 2002/05/09 13:48:20
+ Log: ptrsize should depend on use64bitall, not the other
+ way round, noticed by Karl Tomlinson <k.tomlinson@auckland.ac.nz>.
+ Branch: perl
+ ! Configure
+____________________________________________________________________________
+[ 16522] By: jhi on 2002/05/09 13:07:58
+ Log: Integrate #16510 from macperl;
+
+ Tell IO.xs that MacOS sometimes doesn't need extra help
+ Branch: perl
+ !> ext/IO/IO.xs
+____________________________________________________________________________
+[ 16521] By: ams on 2002/05/09 12:42:12
+ Log: Subject: Re: Storable doc patches
+ From: "Philip Newton" <Philip.Newton@gmx.net>
+ Date: Thu, 9 May 2002 14:32:29 +0200
+ Message-Id:
+ Branch: perl
+ ! ext/Storable/Storable.pm
+____________________________________________________________________________
+[ 16520] By: rgs on 2002/05/09 11:43:12
+ Log: cmp() compares chars, not bytes.
+ Branch: perl
+ ! pod/perllocale.pod
+____________________________________________________________________________
+[ 16519] By: rgs on 2002/05/09 10:19:04
+ Log: A footnote about PERL_DESTRUCT_LEVEL and mod_perl.
+ Branch: perl
+ ! pod/perlhack.pod
+____________________________________________________________________________
+[ 16518] By: ams on 2002/05/09 09:04:31
+ Log: Subject: Storable doc patches
+ From: Philip Newton <Philip.Newton@gmx.net>
+ Date: Thu, 09 May 2002 12:00:45 +0200
+ Message-Id: <vshkdu49hlpqqm6mlre5ilkn8l9dbqdnsg@4ax.com>
+ Branch: perl
+ ! ext/Storable/Storable.pm ext/Storable/Storable.xs
+____________________________________________________________________________
+[ 16517] By: ams on 2002/05/09 08:53:50
+ Log: Subject: Re: Change 16457: [PATCH] Re: [PATCH] Storable (Re: perl@16433)
+ From: Philip Newton <Philip.Newton@gmx.net>
+ Date: Thu, 09 May 2002 11:16:06 +0200
+ Message-Id: <6ffkdu422rls6td4okfu243c9vbtnrfntk@4ax.com>
+ Branch: perl
+ ! ext/Storable/README
+____________________________________________________________________________
+[ 16516] By: nick on 2002/05/09 08:13:39
+ Log: Integrate mainline
+ Branch: perlio
+ !> pod/perlxstut.pod
+____________________________________________________________________________
+[ 16515] By: nick on 2002/05/09 07:29:53
+ Log: Integrate mainline
+ Branch: perlio
+ !> (integrate 27 files)
+____________________________________________________________________________
+[ 16514] By: ams on 2002/05/09 06:50:24
+ Log: Subject: [Patch] perlxstut.pod
+ From: lupe@lupe-christoph.de (Lupe Christoph)
+ Date: Thu, 9 May 2002 09:42:02 +0200
+ Message-Id: <20020509074202.GJ1087@lupe-christoph.de>
+ (Applied with tweaks.)
+ Branch: perl
+ ! pod/perlxstut.pod
+____________________________________________________________________________
+[ 16513] By: ams on 2002/05/09 06:04:47
+ Log: Subject: [Patch] perlapio.pod
+ From: lupe@lupe-christoph.de (Lupe Christoph)
+ Date: Thu, 9 May 2002 09:01:50 +0200
+ Message-Id: <20020509070150.GI1087@lupe-christoph.de>
+ (Applied with tweaks.)
+ Branch: perl
+ ! pod/perlapio.pod
+____________________________________________________________________________
+[ 16512] By: pudge on 2002/05/09 03:44:21
+ Log: Integrate from macperl
+ Branch: maint-5.6/macperl
+ !> macos/macperl/MPConsole.cp
+____________________________________________________________________________
+[ 16511] By: pudge on 2002/05/09 03:34:14
+ Log: Make interrupt act as end of file, MacPerl Bug #542154
+ Branch: macperl
+ ! macos/macperl/MPConsole.cp
+____________________________________________________________________________
+[ 16510] By: pudge on 2002/05/09 03:33:34
+ Log: Tell IO.xs that MacOS sometimes doesn't need extra help
+ Branch: macperl
+ ! ext/IO/IO.xs
+____________________________________________________________________________
+[ 16509] By: pudge on 2002/05/09 03:32:47
+ Log: Make perlio (!sfio) work on MacOS
+ Branch: macperl
+ ! macos/config.h macos/config.sh macos/macish.c
+____________________________________________________________________________
+[ 16508] By: gsar on 2002/05/09 00:24:00
+ Log: integrate maint-5.6/macperl contents
+ Branch: maint-5.6/perl
+ !> README.macos cop.h deb.c embed.h ext/File/Glob/Glob.pm
+ !> lib/DB.pm lib/File/Copy.pm lib/File/Spec/Mac.pm lib/perl5db.pl
+ !> perl.c pod/perlport.pod pp_ctl.c proto.h toke.c util.c
+____________________________________________________________________________
+[ 16507] By: jhi on 2002/05/08 23:48:12
+ Log: Rework #16506 some more.
+ Branch: perl
+ ! ext/Time/HiRes/HiRes.xs win32/win32.c
+____________________________________________________________________________
+[ 16506] By: jhi on 2002/05/08 23:20:29
+ Log: Rework #16503 a bit to keep all the HiRes implementation
+ in one place, assuming we want to re-CPAN Time::HiRes at
+ some point.
+ Branch: perl
+ ! ext/Time/HiRes/HiRes.xs win32/win32.c
+____________________________________________________________________________
+[ 16505] By: jhi on 2002/05/08 22:52:17
+ Log: metaconfig unit change for #16504.
+ Branch: metaconfig
+ ! U/modified/Cppsym.U
+____________________________________________________________________________
+[ 16504] By: jhi on 2002/05/08 22:51:54
+ Log: Subject: [ID 20020508.012] with gcc-3.1, Config.pm's ccsymbols='-Acpu=i386 ...' is bad (esp for _h2ph_pre.ph)
+ From: Pixel <pixel@mandrakesoft.com>
+ Date: 08 May 2002 18:19:51 +0200
+ Message-Id: <ly3cx2wr14.fsf@leia.mandrakesoft.com>
+ Branch: perl
+ ! Configure
+____________________________________________________________________________
+[ 16503] By: gsar on 2002/05/08 22:49:33
+ Log: make the gettimeofday() implementation in Time::HiRes available
+ from perl
+ Branch: perl
+ ! XSUB.h ext/Time/HiRes/HiRes.xs iperlsys.h makedef.pl pp.c
+ ! win32/config.bc win32/config.gc win32/config.vc
+ ! win32/config.vc64 win32/config_H.bc win32/config_H.gc
+ ! win32/config_H.vc win32/config_H.vc64 win32/perlhost.h
+ ! win32/win32.c win32/win32iop.h
+____________________________________________________________________________
+[ 16502] By: jhi on 2002/05/08 22:41:42
+ Log: Subject: Test output update for OS X 10.1.4
+ From: Kay Röpke <kroepke@dolphin-services.de>
+ Date: Wed, 8 May 2002 22:23:36 +0200
+ Message-Id: <79FC9AC7-62C1-11D6-9BDB-000393414688@dolphin-services.de>
+ Branch: perl
+ ! ext/DB_File/t/db-recno.t
+____________________________________________________________________________
+[ 16501] By: jhi on 2002/05/08 22:39:11
+ Log: Subject: [PATCH] Re: perl@16433
+ From: sthoenna@efn.org (Yitzchak Scott-Thoennes)
+ Date: Tue, 07 May 2002 18:40:44 -0700
+ Message-ID: <cII28gzkgaOS092yn@efn.org>
+
+ Subject: Re: [PATCH] Re: perl@16433
+ From: sthoenna@efn.org (Yitzchak Scott-Thoennes)
+ Date: Wed, 08 May 2002 10:16:42 -0700
+ Message-ID: <61V28gzkg+jG092yn@efn.org>
+ Branch: perl
+ ! pp_sys.c sv.c t/op/tie.t
+____________________________________________________________________________
+[ 16500] By: jhi on 2002/05/08 22:25:01
+ Log: Subject: [DOC PATCH] Minor threads::shared nits
+ From: Simon Glover <scog@amnh.org>
+ Date: Wed, 8 May 2002 17:23:16 -0400 (EDT)
+ Message-ID: <Pine.GSO.4.43.0205081719050.26360-100000@egg.amnh.org>
+ Branch: perl
+ ! ext/threads/shared/queue.pm ext/threads/shared/semaphore.pm
+ ! ext/threads/shared/shared.pm
+____________________________________________________________________________
+[ 16499] By: jhi on 2002/05/08 22:22:30
+ Log: Subject: [DOC PATCH] perlthrtut proofreading
+ From: Simon Glover <scog@amnh.org>
+ Date: Wed, 8 May 2002 14:00:13 -0400 (EDT)
+ Message-ID: <Pine.GSO.4.43.0205081351010.23879-100000@egg.amnh.org>
+ Branch: perl
+ ! pod/perlthrtut.pod
+____________________________________________________________________________
+[ 16498] By: jhi on 2002/05/08 22:19:45
+ Log: Deprecate 5.005threads.
+ Branch: perl
+ ! pod/perldelta.pod
+____________________________________________________________________________
+[ 16497] By: jhi on 2002/05/08 22:11:21
+ Log: Integrate perlio;
+
+ PerlIO/XS interface routine and doc updates from
+ lupe@lupe-christoph.de (Lupe Christoph) in mail
+ Subject: [For Review] Patch for perlio.c and pods
+ Message-Id: <20020505084315.GA23900@lupe-christoph.de>
+ Date: Sun, 5 May 2002 10:43:15 +0200
+ (Minor tweaks to follow.)
+
+ Portability and doc tweaks to PerlIO/XS stuff.
+ We are still "papering over the cracks" a bit,
+ but now it is good stiff card held on with epoxy.
+ Branch: perl
+ !> perlio.c pod/perlapio.pod pod/perlxstut.pod
+____________________________________________________________________________
+[ 16496] By: nick on 2002/05/08 19:08:43
+ Log: Portability and doc tweaks to PerlIO/XS stuff.
+ We are still "papering over the cracks" a bit,
+ but now it is good stiff card held on with epoxy.
+ Branch: perlio
+ ! perlio.c pod/perlapio.pod pod/perlxstut.pod
+____________________________________________________________________________
+[ 16495] By: nick on 2002/05/08 17:56:43
+ Log: PerlIO/XS interface routine and doc updates from
+ lupe@lupe-christoph.de (Lupe Christoph) in mail
+ Subject: [For Review] Patch for perlio.c and pods
+ Message-Id: <20020505084315.GA23900@lupe-christoph.de>
+ Date: Sun, 5 May 2002 10:43:15 +0200
+ (Minor tweaks to follow.)
+ Branch: perlio
+ ! perlio.c pod/perlapio.pod pod/perlxstut.pod
+____________________________________________________________________________
+[ 16494] By: nick on 2002/05/08 17:40:34
+ Log: Integrate mainline
+ Branch: perlio
+ !> Changes Porting/p4genpatch ext/File/Glob/bsd_glob.c
+ !> ext/Storable/Storable.pm lib/base.pm lib/diagnostics.t
+ !> lib/fields.t lib/locale.t makedef.pl patchlevel.h
+ !> t/run/fresh_perl.t
+____________________________________________________________________________
+[ 16493] By: jhi on 2002/05/08 14:25:31
+ Log: Update Changes.
+ Branch: perl
+ ! Changes patchlevel.h
+____________________________________________________________________________
[ 16492] By: gsar on 2002/05/08 14:00:54
Log: p4genpatch: produce unix-compatible patches on non-MacOS platforms;
don't unlink /dev/null
diff --git a/MANIFEST b/MANIFEST
index 023f4e2cf5..ef91ab663d 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -88,6 +88,7 @@ ext/B/defsubs_h.PL Generator for constant subroutines
ext/B/Makefile.PL Compiler backend makefile writer
ext/B/NOTES Compiler backend notes
ext/B/O.pm Compiler front-end module (-MO=...)
+ext/B/t/o.t See if O works
ext/B/ramblings/cc.notes Compiler ramblings: notes on CC backend
ext/B/ramblings/curcop.runtime Compiler ramblings: notes on curcop use
ext/B/ramblings/flip-flop Compiler ramblings: notes on flip-flop
diff --git a/Makefile.SH b/Makefile.SH
index 2c123c6750..3361b42ae1 100644
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -980,7 +980,7 @@ makedepend: makedepend.SH config.sh
.PHONY: test check test_prep test_prep_nodll test_prep_pre _test_prep \
test_tty test-tty _test_tty test_notty test-notty _test_notty \
- utest ucheck test.utf8 check.utf8 \
+ utest ucheck test.utf8 check.utf8 test.torture torturetest \
test.third check.third utest.third ucheck.third test_notty.third \
test.deparse test_notty.deparse \
minitest coretest
@@ -1037,6 +1037,11 @@ test-tty: test_tty
test-notty: test_notty
+# Torture testing
+
+test.torture torturetest: test_prep
+ PERL=./perl TEST_ARGS=-torture $(MAKE) _test
+
# Targets for Third Degree testing.
test_prep.third: test_prep perl.third
diff --git a/ext/B/t/o.t b/ext/B/t/o.t
new file mode 100644
index 0000000000..6575180ffd
--- /dev/null
+++ b/ext/B/t/o.t
@@ -0,0 +1,76 @@
+#!./perl -w
+
+BEGIN {
+ chdir 't' if -d 't';
+ @INC = ('../lib', 'lib', '.');
+ require 'test.pl';
+}
+
+use strict;
+use Config;
+use File::Spec;
+use File::Path;
+
+my $path = File::Spec->catdir( 'lib', 'B' );
+unless (-d $path) {
+ mkpath( $path ) or skip_all( 'Cannot create fake module path' );
+}
+
+my $file = File::Spec->catfile( $path, 'success.pm' );
+local *OUT;
+open(OUT, '>', $file) or skip_all( 'Cannot write fake backend module');
+print OUT while <DATA>;
+close *OUT;
+
+plan( 9 ); # And someone's responsible.
+
+# use() makes it difficult to avoid O::import()
+require_ok( 'O' );
+
+my @args = ('-Ilib', '-MO=success,foo,bar', '-e', '1' );
+my @lines = get_lines( @args );
+
+is( $lines[0], '-e syntax OK', 'O.pm should not munge perl output without -qq');
+is( $lines[1], 'Compiling!', 'Output should not be saved without -q switch' );
+is( $lines[2], '(foo) <bar>', 'O.pm should call backend compile() method' );
+is( $lines[3], '[]', 'Nothing should be in $O::BEGIN_output without -q' );
+
+$args[1] = '-MO=-q,success,foo,bar';
+@lines = get_lines( @args );
+isnt( $lines[1], 'Compiling!', 'Output should not be printed with -q switch' );
+
+SKIP: {
+ skip( '-q redirection does not work without PerlIO', 2)
+ unless $Config{useperlio};
+ is( $lines[2], "[Compiling!", '... but should be in $O::BEGIN_output' );
+
+ $args[1] = '-MO=-qq,success,foo,bar';
+ @lines = get_lines( @args );
+ is( scalar @lines, 3, '-qq should suppress even the syntax OK message' );
+}
+
+$args[1] = '-MO=success,fail';
+@lines = get_lines( @args );
+like( $lines[0], qr/fail at .eval/,
+ 'O.pm should die if backend compile() does not return a subref' );
+
+sub get_lines {
+ split(/[\r\n]+/, runperl( args => [ @_ ], stderr => 1 ));
+}
+
+END {
+ 1 while unlink($file);
+}
+
+__END__
+package B::success;
+
+print "Compiling!\n";
+
+sub compile {
+ return 'fail' if ($_[0] eq 'fail');
+ print "($_[0]) <$_[1]>\n";
+ return sub { print "[$O::BEGIN_output]\n" };
+}
+
+1;
diff --git a/ext/DB_File/t/db-btree.t b/ext/DB_File/t/db-btree.t
index 668e94a918..16ee276c8d 100755
--- a/ext/DB_File/t/db-btree.t
+++ b/ext/DB_File/t/db-btree.t
@@ -24,7 +24,7 @@ BEGIN {
&& $Config{db_version_patch} == 0) {
warn <<EOM;
#
-# This test is known to crash in Mac OS X versions 10.1.3 (or earlier)
+# This test is known to crash in Mac OS X versions 10.1.4 (or earlier)
# because of the buggy Berkeley DB version included with the OS.
#
EOM
diff --git a/ext/Encode/Encode.xs b/ext/Encode/Encode.xs
index 09918a1785..6e24039ce8 100644
--- a/ext/Encode/Encode.xs
+++ b/ext/Encode/Encode.xs
@@ -283,7 +283,7 @@ Method_needs_lines(obj)
SV * obj
CODE:
{
- encode_t *enc = INT2PTR(encode_t *, SvIV(SvRV(obj)));
+ /* encode_t *enc = INT2PTR(encode_t *, SvIV(SvRV(obj))); */
ST(0) = &PL_sv_no;
XSRETURN(1);
}
@@ -293,7 +293,7 @@ Method_perlio_ok(obj)
SV * obj
CODE:
{
- encode_t *enc = INT2PTR(encode_t *, SvIV(SvRV(obj)));
+ /* encode_t *enc = INT2PTR(encode_t *, SvIV(SvRV(obj))); */
/* require_pv(PERLIO_FILENAME); */
eval_pv("require PerlIO::encoding", 0);
diff --git a/ext/threads/shared/queue.pm b/ext/threads/shared/queue.pm
index 557833ac7d..02a5c2cf7d 100644
--- a/ext/threads/shared/queue.pm
+++ b/ext/threads/shared/queue.pm
@@ -1,48 +1,9 @@
-
package threads::shared::queue;
use threads::shared;
use strict;
-sub new {
- my $class = shift;
- my @q : shared = @_;
- my $q = \@q;
- return bless $q, $class;
-}
-
-sub dequeue {
- my $q = shift;
- lock(@$q);
- until(@$q) {
- cond_wait(@$q);
- }
- return shift @$q;
-}
-
-sub dequeue_nb {
- my $q = shift;
- lock(@$q);
- if (@$q) {
- return shift @$q;
- } else {
- return undef;
- }
-}
-
-sub enqueue {
- my $q = shift;
- lock(@$q);
- push(@$q, @_) and cond_broadcast @$q;
-}
-
-sub pending {
- my $q = shift;
- lock(@$q);
- return scalar(@$q);
-}
-
-1;
+our $VERSION = '1.00';
=head1 NAME
@@ -104,3 +65,44 @@ L<threads>, L<threads::shared>
=cut
+sub new {
+ my $class = shift;
+ my @q : shared = @_;
+ my $q = \@q;
+ return bless $q, $class;
+}
+
+sub dequeue {
+ my $q = shift;
+ lock(@$q);
+ until(@$q) {
+ cond_wait(@$q);
+ }
+ return shift @$q;
+}
+
+sub dequeue_nb {
+ my $q = shift;
+ lock(@$q);
+ if (@$q) {
+ return shift @$q;
+ } else {
+ return undef;
+ }
+}
+
+sub enqueue {
+ my $q = shift;
+ lock(@$q);
+ push(@$q, @_) and cond_broadcast @$q;
+}
+
+sub pending {
+ my $q = shift;
+ lock(@$q);
+ return scalar(@$q);
+}
+
+1;
+
+
diff --git a/patchlevel.h b/patchlevel.h
index a59d8418ee..1bfff9ca6e 100644
--- a/patchlevel.h
+++ b/patchlevel.h
@@ -79,7 +79,7 @@
#if !defined(PERL_PATCHLEVEL_H_IMPLICIT) && !defined(LOCAL_PATCH_COUNT)
static char *local_patches[] = {
NULL
- ,"DEVEL16492"
+ ,"DEVEL16538"
,NULL
};
diff --git a/pod/perlhack.pod b/pod/perlhack.pod
index 97772b8b23..2750e9e495 100644
--- a/pod/perlhack.pod
+++ b/pod/perlhack.pod
@@ -1803,6 +1803,47 @@ You must be triply conscious of cross-platform concerns. This usually
boils down to using File::Spec and avoiding things like C<fork()> and
C<system()> unless absolutely necessary.
+=head2 Special Make Test Targets
+
+There are various special make targets that can be used to test Perl
+slightly differently than the standard "test" target. Not all them
+are expected to give a 100% success rate. Many of them have several
+aliases.
+
+=over 4
+
+=item coretest
+
+Run F<perl> on all but F<lib/*> tests.
+
+=item test.deparse
+
+Run all the tests through the B::Deparse. Not all tests will succeed.
+
+=item minitest
+
+Run F<miniperl> on F<t/base>, F<t/comp>, F<t/cmd>, F<t/run>, F<t/io>,
+F<t/op>, and F<t/uni> tests.
+
+=item test.third check.third utest.third ucheck.third
+
+(Only in Tru64) Run all the tests using the memory leak + naughty
+memory access tool "Third Degree". The log files will be named
+F<perl3.log.testname>.
+
+=item test.torture torturetest
+
+Run all the usual tests and some extra tests. As of Perl 5.8.0 the
+only extra tests are Abigail's JAPHs, t/japh/abigail.t.
+
+You can also run the torture test with F<t/harness> by giving
+C<-torture> argument to F<t/harness>.
+
+=item utest ucheck test.utf8 check.utf8
+
+Run all the tests with -Mutf8. Not all tests will succeed.
+
+=back
=head1 EXTERNAL TOOLS FOR DEBUGGING PERL
diff --git a/pod/perltoc.pod b/pod/perltoc.pod
index b14290cef8..59c1467ee9 100644
--- a/pod/perltoc.pod
+++ b/pod/perltoc.pod
@@ -1854,6 +1854,104 @@ string
=item DESCRIPTION
+=item What Is A Thread Anyway?
+
+=item Threaded Program Models
+
+=over 4
+
+=item Boss/Worker
+
+=item Work Crew
+
+=item Pipeline
+
+=back
+
+=item Native threads
+
+=item What kind of threads are perl threads?
+
+=item Threadsafe Modules
+
+=item Thread Basics
+
+=over 4
+
+=item Basic Thread Support
+
+=item Creating Threads
+
+=item Giving up control
+
+=item Waiting For A Thread To Exit
+
+=item Ignoring A Thread
+
+=back
+
+=item Threads And Data
+
+=over 4
+
+=item Shared And Unshared Data
+
+=item Thread Pitfalls: Races
+
+=item Controlling access: lock()
+
+=item Thread Pitfall: Deadlocks
+
+=item Queues: Passing Data Around
+
+=back
+
+=item Threads And Code
+
+=over 4
+
+=item Semaphores: Synchronizing Data Access
+
+Basic semaphores, Advanced Semaphores
+
+=back
+
+=item General Thread Utility Routines
+
+=over 4
+
+=item What Thread Am I In?
+
+=item Thread IDs
+
+=item Are These Threads The Same?
+
+=item What Threads Are Running?
+
+=back
+
+=item A Complete Example
+
+=item Conclusion
+
+=item Bibliography
+
+=over 4
+
+=item Introductory Texts
+
+=item OS-Related References
+
+=item Other References
+
+=back
+
+=item Acknowledgements
+
+=item AUTHOR
+
+=item Copyrights
+
=back
=head2 perlothrtut - old tutorial on threads in Perl
@@ -2836,8 +2934,8 @@ References, Tutorials, Task-Oriented, Special Topics
=back
-=head2 perlfaq3 - Programming Tools ($Revision: 1.21 $, $Date: 2002/04/28
-15:51:10 $)
+=head2 perlfaq3 - Programming Tools ($Revision: 1.22 $, $Date: 2002/05/06
+13:11:13 $)
=over 4
@@ -2921,8 +3019,8 @@ my C program; what am I doing wrong?
=back
-=head2 perlfaq4 - Data Manipulation ($Revision: 1.20 $, $Date: 2002/04/07
-18:46:13 $)
+=head2 perlfaq4 - Data Manipulation ($Revision: 1.21 $, $Date: 2002/05/06
+13:08:46 $)
=over 4
@@ -2942,7 +3040,7 @@ Trig functions?
=item How do I convert between numeric representations?
-B<How do I convert Hexadecimal into decimal:>, B<How do I convert from
+B<How do I convert hexadecimal into decimal:>, B<How do I convert from
decimal to hexadecimal:>, B<How do I convert from octal to decimal:>, B<How
do I convert from decimal to octal:>, B<How do I convert from binary to
decimal:>, B<How do I convert from decimal to binary:>
@@ -3800,7 +3898,7 @@ C<!!!>, C<!!>, C<!>
=item EXAMPLE 8 (Coming Soon)
-=item EXAMPLE 9 (Coming Soon)
+=item EXAMPLE 9 Passing open files to XSes
=item Troubleshooting these Examples
@@ -4360,8 +4458,8 @@ HEf_SVKEY, Nullch, Nullsv
get_hv, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, HeSVKEY_set,
HeVAL, HvNAME, hv_clear, hv_delete, hv_delete_ent, hv_exists,
hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey,
-hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, hv_store,
-hv_store_ent, hv_undef, newHV, Nullhv
+hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iternext_flags, hv_iterval,
+hv_magic, hv_store, hv_store_ent, hv_undef, newHV, Nullhv
=item Magical Functions
@@ -4428,13 +4526,13 @@ sv_nounlocking, sv_nv, sv_pos_b2u, sv_pos_u2b, sv_pv, sv_pvbyte,
sv_pvbyten, sv_pvbyten_force, sv_pvn, sv_pvn_force, sv_pvn_force_flags,
sv_pvutf8, sv_pvutf8n, sv_pvutf8n_force, sv_reftype, sv_replace,
sv_report_used, sv_reset, sv_rvweaken, sv_setiv, sv_setiv_mg, sv_setnv,
-sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpviv, sv_setpviv_mg,
-sv_setpvn, sv_setpvn_mg, sv_setpv_mg, sv_setref_iv, sv_setref_nv,
-sv_setref_pv, sv_setref_pvn, sv_setref_uv, sv_setsv, sv_setsv_flags,
-sv_setsv_mg, sv_setuv, sv_setuv_mg, sv_taint, sv_tainted, sv_true,
-sv_unmagic, sv_unref, sv_unref_flags, sv_untaint, sv_upgrade, sv_usepvn,
-sv_usepvn_mg, sv_utf8_decode, sv_utf8_downgrade, sv_utf8_encode,
-sv_utf8_upgrade, sv_utf8_upgrade_flags, sv_uv, sv_vcatpvfn, sv_vsetpvfn
+sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpvn, sv_setpvn_mg,
+sv_setpv_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn,
+sv_setref_uv, sv_setsv, sv_setsv_flags, sv_setsv_mg, sv_setuv, sv_setuv_mg,
+sv_taint, sv_tainted, sv_true, sv_unmagic, sv_unref, sv_unref_flags,
+sv_untaint, sv_upgrade, sv_usepvn, sv_usepvn_mg, sv_utf8_decode,
+sv_utf8_downgrade, sv_utf8_encode, sv_utf8_upgrade, sv_utf8_upgrade_flags,
+sv_uv, sv_vcatpvfn, sv_vsetpvfn
=item Unicode Support
@@ -4539,7 +4637,7 @@ Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt, Set_ptrcnt
=item Extension Layers
-":encoding", ":Scalar", ":Object" or ":Perl"
+":encoding", ":Scalar", ":Via"
=back
@@ -4572,7 +4670,7 @@ B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>, B<PerlIO_setlinebuf(f)>
=item Co-existence with stdio
B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
-B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>
+B<PerlIO_releaseFILE(p,f)>, B<PerlIO_findFILE(f)>
=item "Fast gets" Functions
@@ -5030,6 +5128,11 @@ finish, 'enter', print
F<t/base/>, F<t/cmd/>, F<t/comp/>, F<t/io/>, F<t/lib/>, F<t/op/>,
F<t/pod/>, F<t/run/>, t/base t/comp, t/cmd t/run t/io t/op, t/lib ext lib
+=item Special Make Test Targets
+
+coretest, test.deparse, minitest, test.third check.third utest.third
+ucheck.third, test.torture torturetest, utest ucheck test.utf8 check.utf8
+
=back
=item EXTERNAL TOOLS FOR DEBUGGING PERL
@@ -5209,11 +5312,13 @@ I<The Road goes ever on and on, down from the door where it began.>
=item FreeBSD Failing locale Test 117 For ISO8859-15 Locales
+=item Modifying $_ Inside for(..)
+
=item mod_perl 1.26 Doesn't Build With Threaded Perl
=item lib/ftmp-security tests warn 'system possibly insecure'
-=item HP-UX lib/posix Subtest 9 Fails When LP64-Configured
+=item HP-UX lib/posix Subtest 9 Fails When LP64-Configured
=item Linux With Sfio Fails op/misc Test 48
@@ -5237,8 +5342,6 @@ I<The Road goes ever on and on, down from the door where it began.>
=item XML::Parser not working
-=item Localising a Tied Variable Leaks Memory
-
=item z/OS (OS/390)
=item Localising Tied Arrays and Hashes Is Broken
@@ -7991,6 +8094,37 @@ method, locked
=back
+=head2 threadshared::queue, threads::shared::queue - thread-safe queues
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item FUNCTIONS AND METHODS
+
+new, enqueue LIST, dequeue, dequeue_nb, pending
+
+=item SEE ALSO
+
+=back
+
+=head2 threadshared::semaphore, threads::shared::semaphore - thread-safe
+semaphores
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item FUNCTIONS AND METHODS
+
+new, new NUMBER, down, down NUMBER, up, up NUMBER
+
+=back
+
=head2 threadshared::shared, threads::shared - Perl extension for sharing
data structures between threads
@@ -8027,7 +8161,8 @@ from perl
=item DESCRIPTION
$thread = threads->create(function, LIST), $thread->join, $thread->detach,
-threads->self, $thread->tid, threads->yield();, threads->list();
+threads->self, $thread->tid, threads->yield();, threads->list();, async
+BLOCK;
=item WARNINGS
@@ -8693,7 +8828,8 @@ from perl
=item DESCRIPTION
$thread = threads->create(function, LIST), $thread->join, $thread->detach,
-threads->self, $thread->tid, threads->yield();, threads->list();
+threads->self, $thread->tid, threads->yield();, threads->list();, async
+BLOCK;
=item WARNINGS
@@ -8736,6 +8872,37 @@ cond_signal VARIABLE, cond_broadcast VARIABLE
=back
+=head2 threadshared::queue, threads::shared::queue - thread-safe queues
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item FUNCTIONS AND METHODS
+
+new, enqueue LIST, dequeue, dequeue_nb, pending
+
+=item SEE ALSO
+
+=back
+
+=head2 threadshared::semaphore, threads::shared::semaphore - thread-safe
+semaphores
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item FUNCTIONS AND METHODS
+
+new, new NUMBER, down, down NUMBER, up, up NUMBER
+
+=back
+
=head2 utf8 - Perl pragma to enable/disable UTF-8 (or UTF-EBCDIC) in source
code
@@ -10167,8 +10334,7 @@ C<asctime_r_proto>, C<awk>
=item b
-C<baserev>, C<bash>, C<bin>, C<binexp>, C<bison>,
-C<byacc>, C<byteorder>
+C<baserev>, C<bash>, C<bin>, C<binexp>, C<bison>, C<byacc>, C<byteorder>
=item c
@@ -10184,78 +10350,77 @@ C<csh>, C<ctermid_r_proto>, C<ctime_r_proto>
C<d__fwalk>, C<d_access>, C<d_accessx>, C<d_alarm>, C<d_archlib>,
C<d_asctime_r>, C<d_atolf>, C<d_atoll>, C<d_attribut>, C<d_bcmp>,
-C<d_bcopy>, C<d_bsd>, C<d_bsdgetpgrp>, C<d_bsdsetpgrp>,
-C<d_bzero>, C<d_casti32>, C<d_castneg>, C<d_charvspr>, C<d_chown>,
-C<d_chroot>, C<d_chsize>, C<d_class>, C<d_closedir>, C<d_cmsghdr_s>,
-C<d_const>, C<d_crypt>, C<d_crypt_r>, C<d_csh>, C<d_ctermid_r>,
-C<d_ctime_r>, C<d_cuserid>, C<d_dbl_dig>, C<d_dbminitproto>, C<d_difftime>,
-C<d_dirfd>, C<d_dirnamlen>, C<d_dlerror>, C<d_dlopen>, C<d_dlsymun>,
-C<d_dosuid>, C<d_drand48_r>, C<d_drand48proto>, C<d_dup2>, C<d_eaccess>,
-C<d_endgrent>, C<d_endgrent_r>, C<d_endhent>, C<d_endhostent_r>,
-C<d_endnent>, C<d_endnetent_r>, C<d_endpent>, C<d_endprotoent_r>,
-C<d_endpwent>, C<d_endpwent_r>, C<d_endsent>, C<d_endservent_r>,
-C<d_eofnblk>, C<d_eunice>, C<d_fchdir>, C<d_fchmod>, C<d_fchown>,
-C<d_fcntl>, C<d_fcntl_can_lock>, C<d_fd_macros>, C<d_fd_set>,
-C<d_fds_bits>, C<d_fgetpos>, C<d_finite>, C<d_finitel>, C<d_flexfnam>,
-C<d_flock>, C<d_flockproto>, C<d_fork>, C<d_fp_class>, C<d_fpathconf>,
-C<d_fpclass>, C<d_fpclassify>, C<d_fpclassl>, C<d_fpos64_t>, C<d_frexpl>,
-C<d_fs_data_s>, C<d_fseeko>, C<d_fsetpos>, C<d_fstatfs>, C<d_fstatvfs>,
-C<d_fsync>, C<d_ftello>, C<d_ftime>, C<d_Gconvert>, C<d_getcwd>,
-C<d_getespwnam>, C<d_getfsstat>, C<d_getgrent>, C<d_getgrent_r>,
-C<d_getgrgid_r>, C<d_getgrnam_r>, C<d_getgrps>, C<d_gethbyaddr>,
-C<d_gethbyname>, C<d_gethent>, C<d_gethname>, C<d_gethostbyaddr_r>,
-C<d_gethostbyname_r>, C<d_gethostent_r>, C<d_gethostprotos>,
-C<d_getitimer>, C<d_getlogin>, C<d_getlogin_r>, C<d_getmnt>,
-C<d_getmntent>, C<d_getnbyaddr>, C<d_getnbyname>, C<d_getnent>,
-C<d_getnetbyaddr_r>, C<d_getnetbyname_r>, C<d_getnetent_r>,
-C<d_getnetprotos>, C<d_getpagsz>, C<d_getpbyname>, C<d_getpbynumber>,
-C<d_getpent>, C<d_getpgid>, C<d_getpgrp2>, C<d_getpgrp>, C<d_getppid>,
-C<d_getprior>, C<d_getprotobyname_r>, C<d_getprotobynumber_r>,
-C<d_getprotoent_r>, C<d_getprotoprotos>, C<d_getprpwnam>, C<d_getpwent>,
-C<d_getpwent_r>, C<d_getpwnam_r>, C<d_getpwuid_r>, C<d_getsbyname>,
-C<d_getsbyport>, C<d_getsent>, C<d_getservbyname_r>, C<d_getservbyport_r>,
-C<d_getservent_r>, C<d_getservprotos>, C<d_getspnam>, C<d_getspnam_r>,
-C<d_gettimeod>, C<d_gmtime_r>, C<d_gnulibc>, C<d_grpasswd>, C<d_hasmntopt>,
-C<d_htonl>, C<d_index>, C<d_inetaton>, C<d_int64_t>, C<d_isascii>,
-C<d_isfinite>, C<d_isinf>, C<d_isnan>, C<d_isnanl>, C<d_killpg>,
-C<d_lchown>, C<d_ldbl_dig>, C<d_link>, C<d_localtime_r>, C<d_locconv>,
-C<d_lockf>, C<d_longdbl>, C<d_longlong>, C<d_lseekproto>, C<d_lstat>,
-C<d_madvise>, C<d_mblen>, C<d_mbstowcs>, C<d_mbtowc>, C<d_memchr>,
-C<d_memcmp>, C<d_memcpy>, C<d_memmove>, C<d_memset>, C<d_mkdir>,
-C<d_mkdtemp>, C<d_mkfifo>, C<d_mkstemp>, C<d_mkstemps>, C<d_mktime>,
-C<d_mmap>, C<d_modfl>, C<d_modfl_pow32_bug>, C<d_mprotect>, C<d_msg>,
-C<d_msg_ctrunc>, C<d_msg_dontroute>, C<d_msg_oob>, C<d_msg_peek>,
-C<d_msg_proxy>, C<d_msgctl>, C<d_msgget>, C<d_msghdr_s>, C<d_msgrcv>,
-C<d_msgsnd>, C<d_msync>, C<d_munmap>, C<d_mymalloc>, C<d_nice>,
-C<d_nl_langinfo>, C<d_nv_preserves_uv>, C<d_off64_t>,
-C<d_old_pthread_create_joinable>, C<d_oldpthreads>, C<d_oldsock>,
-C<d_open3>, C<d_pathconf>, C<d_pause>, C<d_perl_otherlibdirs>,
-C<d_phostname>, C<d_pipe>, C<d_poll>, C<d_portable>, C<d_PRId64>,
-C<d_PRIeldbl>, C<d_PRIEUldbl>, C<d_PRIfldbl>, C<d_PRIFUldbl>,
-C<d_PRIgldbl>, C<d_PRIGUldbl>, C<d_PRIi64>, C<d_PRIo64>, C<d_PRIu64>,
-C<d_PRIx64>, C<d_PRIXU64>, C<d_procselfexe>, C<d_pthread_atfork>,
-C<d_pthread_yield>, C<d_pwage>, C<d_pwchange>, C<d_pwclass>,
-C<d_pwcomment>, C<d_pwexpire>, C<d_pwgecos>, C<d_pwpasswd>, C<d_pwquota>,
-C<d_qgcvt>, C<d_quad>, C<d_random_r>, C<d_readdir64_r>, C<d_readdir>,
-C<d_readdir_r>, C<d_readlink>, C<d_readv>, C<d_recvmsg>, C<d_rename>,
-C<d_rewinddir>, C<d_rmdir>, C<d_safebcpy>, C<d_safemcpy>, C<d_sanemcmp>,
-C<d_sbrkproto>, C<d_sched_yield>, C<d_scm_rights>, C<d_SCNfldbl>,
-C<d_seekdir>, C<d_select>, C<d_sem>, C<d_semctl>, C<d_semctl_semid_ds>,
-C<d_semctl_semun>, C<d_semget>, C<d_semop>, C<d_sendmsg>, C<d_setegid>,
-C<d_seteuid>, C<d_setgrent>, C<d_setgrent_r>, C<d_setgrps>, C<d_sethent>,
-C<d_sethostent_r>, C<d_setitimer>, C<d_setlinebuf>, C<d_setlocale>,
-C<d_setlocale_r>, C<d_setnent>, C<d_setnetent_r>, C<d_setpent>,
-C<d_setpgid>, C<d_setpgrp2>, C<d_setpgrp>, C<d_setprior>,
-C<d_setproctitle>, C<d_setprotoent_r>, C<d_setpwent>, C<d_setpwent_r>,
-C<d_setregid>, C<d_setresgid>, C<d_setresuid>, C<d_setreuid>, C<d_setrgid>,
-C<d_setruid>, C<d_setsent>, C<d_setservent_r>, C<d_setsid>, C<d_setvbuf>,
-C<d_sfio>, C<d_shm>, C<d_shmat>, C<d_shmatprototype>, C<d_shmctl>,
-C<d_shmdt>, C<d_shmget>, C<d_sigaction>, C<d_sigprocmask>, C<d_sigsetjmp>,
-C<d_sockatmark>, C<d_sockatmarkproto>, C<d_socket>, C<d_socklen_t>,
-C<d_sockpair>, C<d_socks5_init>, C<d_sqrtl>, C<d_srand48_r>,
-C<d_srandom_r>, C<d_sresgproto>, C<d_sresuproto>, C<d_statblks>,
-C<d_statfs_f_flags>, C<d_statfs_s>, C<d_statvfs>, C<d_stdio_cnt_lval>,
-C<d_stdio_ptr_lval>, C<d_stdio_ptr_lval_nochange_cnt>,
+C<d_bcopy>, C<d_bsd>, C<d_bsdgetpgrp>, C<d_bsdsetpgrp>, C<d_bzero>,
+C<d_casti32>, C<d_castneg>, C<d_charvspr>, C<d_chown>, C<d_chroot>,
+C<d_chsize>, C<d_class>, C<d_closedir>, C<d_cmsghdr_s>, C<d_const>,
+C<d_crypt>, C<d_crypt_r>, C<d_csh>, C<d_ctermid_r>, C<d_ctime_r>,
+C<d_cuserid>, C<d_dbl_dig>, C<d_dbminitproto>, C<d_difftime>, C<d_dirfd>,
+C<d_dirnamlen>, C<d_dlerror>, C<d_dlopen>, C<d_dlsymun>, C<d_dosuid>,
+C<d_drand48_r>, C<d_drand48proto>, C<d_dup2>, C<d_eaccess>, C<d_endgrent>,
+C<d_endgrent_r>, C<d_endhent>, C<d_endhostent_r>, C<d_endnent>,
+C<d_endnetent_r>, C<d_endpent>, C<d_endprotoent_r>, C<d_endpwent>,
+C<d_endpwent_r>, C<d_endsent>, C<d_endservent_r>, C<d_eofnblk>,
+C<d_eunice>, C<d_fchdir>, C<d_fchmod>, C<d_fchown>, C<d_fcntl>,
+C<d_fcntl_can_lock>, C<d_fd_macros>, C<d_fd_set>, C<d_fds_bits>,
+C<d_fgetpos>, C<d_finite>, C<d_finitel>, C<d_flexfnam>, C<d_flock>,
+C<d_flockproto>, C<d_fork>, C<d_fp_class>, C<d_fpathconf>, C<d_fpclass>,
+C<d_fpclassify>, C<d_fpclassl>, C<d_fpos64_t>, C<d_frexpl>, C<d_fs_data_s>,
+C<d_fseeko>, C<d_fsetpos>, C<d_fstatfs>, C<d_fstatvfs>, C<d_fsync>,
+C<d_ftello>, C<d_ftime>, C<d_Gconvert>, C<d_getcwd>, C<d_getespwnam>,
+C<d_getfsstat>, C<d_getgrent>, C<d_getgrent_r>, C<d_getgrgid_r>,
+C<d_getgrnam_r>, C<d_getgrps>, C<d_gethbyaddr>, C<d_gethbyname>,
+C<d_gethent>, C<d_gethname>, C<d_gethostbyaddr_r>, C<d_gethostbyname_r>,
+C<d_gethostent_r>, C<d_gethostprotos>, C<d_getitimer>, C<d_getlogin>,
+C<d_getlogin_r>, C<d_getmnt>, C<d_getmntent>, C<d_getnbyaddr>,
+C<d_getnbyname>, C<d_getnent>, C<d_getnetbyaddr_r>, C<d_getnetbyname_r>,
+C<d_getnetent_r>, C<d_getnetprotos>, C<d_getpagsz>, C<d_getpbyname>,
+C<d_getpbynumber>, C<d_getpent>, C<d_getpgid>, C<d_getpgrp2>, C<d_getpgrp>,
+C<d_getppid>, C<d_getprior>, C<d_getprotobyname_r>,
+C<d_getprotobynumber_r>, C<d_getprotoent_r>, C<d_getprotoprotos>,
+C<d_getprpwnam>, C<d_getpwent>, C<d_getpwent_r>, C<d_getpwnam_r>,
+C<d_getpwuid_r>, C<d_getsbyname>, C<d_getsbyport>, C<d_getsent>,
+C<d_getservbyname_r>, C<d_getservbyport_r>, C<d_getservent_r>,
+C<d_getservprotos>, C<d_getspnam>, C<d_getspnam_r>, C<d_gettimeod>,
+C<d_gmtime_r>, C<d_gnulibc>, C<d_grpasswd>, C<d_hasmntopt>, C<d_htonl>,
+C<d_index>, C<d_inetaton>, C<d_int64_t>, C<d_isascii>, C<d_isfinite>,
+C<d_isinf>, C<d_isnan>, C<d_isnanl>, C<d_killpg>, C<d_lchown>,
+C<d_ldbl_dig>, C<d_link>, C<d_localtime_r>, C<d_locconv>, C<d_lockf>,
+C<d_longdbl>, C<d_longlong>, C<d_lseekproto>, C<d_lstat>, C<d_madvise>,
+C<d_mblen>, C<d_mbstowcs>, C<d_mbtowc>, C<d_memchr>, C<d_memcmp>,
+C<d_memcpy>, C<d_memmove>, C<d_memset>, C<d_mkdir>, C<d_mkdtemp>,
+C<d_mkfifo>, C<d_mkstemp>, C<d_mkstemps>, C<d_mktime>, C<d_mmap>,
+C<d_modfl>, C<d_modfl_pow32_bug>, C<d_mprotect>, C<d_msg>, C<d_msg_ctrunc>,
+C<d_msg_dontroute>, C<d_msg_oob>, C<d_msg_peek>, C<d_msg_proxy>,
+C<d_msgctl>, C<d_msgget>, C<d_msghdr_s>, C<d_msgrcv>, C<d_msgsnd>,
+C<d_msync>, C<d_munmap>, C<d_mymalloc>, C<d_nice>, C<d_nl_langinfo>,
+C<d_nv_preserves_uv>, C<d_off64_t>, C<d_old_pthread_create_joinable>,
+C<d_oldpthreads>, C<d_oldsock>, C<d_open3>, C<d_pathconf>, C<d_pause>,
+C<d_perl_otherlibdirs>, C<d_phostname>, C<d_pipe>, C<d_poll>,
+C<d_portable>, C<d_PRId64>, C<d_PRIeldbl>, C<d_PRIEUldbl>, C<d_PRIfldbl>,
+C<d_PRIFUldbl>, C<d_PRIgldbl>, C<d_PRIGUldbl>, C<d_PRIi64>, C<d_PRIo64>,
+C<d_PRIu64>, C<d_PRIx64>, C<d_PRIXU64>, C<d_procselfexe>,
+C<d_pthread_atfork>, C<d_pthread_yield>, C<d_pwage>, C<d_pwchange>,
+C<d_pwclass>, C<d_pwcomment>, C<d_pwexpire>, C<d_pwgecos>, C<d_pwpasswd>,
+C<d_pwquota>, C<d_qgcvt>, C<d_quad>, C<d_random_r>, C<d_readdir64_r>,
+C<d_readdir>, C<d_readdir_r>, C<d_readlink>, C<d_readv>, C<d_recvmsg>,
+C<d_rename>, C<d_rewinddir>, C<d_rmdir>, C<d_safebcpy>, C<d_safemcpy>,
+C<d_sanemcmp>, C<d_sbrkproto>, C<d_sched_yield>, C<d_scm_rights>,
+C<d_SCNfldbl>, C<d_seekdir>, C<d_select>, C<d_sem>, C<d_semctl>,
+C<d_semctl_semid_ds>, C<d_semctl_semun>, C<d_semget>, C<d_semop>,
+C<d_sendmsg>, C<d_setegid>, C<d_seteuid>, C<d_setgrent>, C<d_setgrent_r>,
+C<d_setgrps>, C<d_sethent>, C<d_sethostent_r>, C<d_setitimer>,
+C<d_setlinebuf>, C<d_setlocale>, C<d_setlocale_r>, C<d_setnent>,
+C<d_setnetent_r>, C<d_setpent>, C<d_setpgid>, C<d_setpgrp2>, C<d_setpgrp>,
+C<d_setprior>, C<d_setproctitle>, C<d_setprotoent_r>, C<d_setpwent>,
+C<d_setpwent_r>, C<d_setregid>, C<d_setresgid>, C<d_setresuid>,
+C<d_setreuid>, C<d_setrgid>, C<d_setruid>, C<d_setsent>, C<d_setservent_r>,
+C<d_setsid>, C<d_setvbuf>, C<d_sfio>, C<d_shm>, C<d_shmat>,
+C<d_shmatprototype>, C<d_shmctl>, C<d_shmdt>, C<d_shmget>, C<d_sigaction>,
+C<d_sigprocmask>, C<d_sigsetjmp>, C<d_sockatmark>, C<d_sockatmarkproto>,
+C<d_socket>, C<d_socklen_t>, C<d_sockpair>, C<d_socks5_init>, C<d_sqrtl>,
+C<d_srand48_r>, C<d_srandom_r>, C<d_sresgproto>, C<d_sresuproto>,
+C<d_statblks>, C<d_statfs_f_flags>, C<d_statfs_s>, C<d_statvfs>,
+C<d_stdio_cnt_lval>, C<d_stdio_ptr_lval>, C<d_stdio_ptr_lval_nochange_cnt>,
C<d_stdio_ptr_lval_sets_cnt>, C<d_stdio_stream_array>, C<d_stdiobase>,
C<d_stdstdio>, C<d_strchr>, C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>,
C<d_strerror>, C<d_strerror_r>, C<d_strftime>, C<d_strtod>, C<d_strtol>,
@@ -11126,6 +11291,8 @@ guess_encoding($data, [, I<list of suspects>])
=item CAVEATS
+=item TO DO
+
=item SEE ALSO
=back
@@ -11234,11 +11401,12 @@ the Cyrillic world, gsm0338 - Hentai Latin 1
=item CJK: Chinese, Japanese, Korean (Multibyte)
Encode::CN -- Continental China, Encode::JP -- Japan, Encode::KR -- Korea,
-Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN
+Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN,
+Encode::JIS2K -- JIS X 0213 encodings via CPAN
=item Miscellaneous encodings
-Encode::EBCDIC, Encode::Symbols
+Encode::EBCDIC, Encode::Symbols, Encode::MIME::Header, Encode::Guess
=back
@@ -11432,6 +11600,8 @@ guess_encoding($data, [, I<list of suspects>])
=item CAVEATS
+=item TO DO
+
=item SEE ALSO
=back
@@ -11514,11 +11684,12 @@ the Cyrillic world, gsm0338 - Hentai Latin 1
=item CJK: Chinese, Japanese, Korean (Multibyte)
Encode::CN -- Continental China, Encode::JP -- Japan, Encode::KR -- Korea,
-Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN
+Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN,
+Encode::JIS2K -- JIS X 0213 encodings via CPAN
=item Miscellaneous encodings
-Encode::EBCDIC, Encode::Symbols
+Encode::EBCDIC, Encode::Symbols, Encode::MIME::Header, Encode::Guess
=back
@@ -12095,6 +12266,49 @@ B<replace_manpage_separator>
=back
+=head2 ExtUtils::MM_MacOS - methods to override UN*X behaviour in
+ExtUtils::MakeMaker
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=back
+
+maybe_command
+
+guess_name
+
+macify
+
+patternify
+
+init_main
+
+init_others
+
+init_dirscan
+
+libscan (o)
+
+constants (o)
+
+static (o)
+
+dlsyms (o)
+
+dynamic (o)
+
+clean (o)
+
+realclean (o)
+
+rulez (o)
+
+processPL (o)
+
=head2 ExtUtils::MM_NW5 - methods to override UN*X behaviour in
ExtUtils::MakeMaker
@@ -12108,6 +12322,8 @@ ExtUtils::MakeMaker
constants (o)
+static_lib (o)
+
dynamic_lib (o)
=head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
@@ -12495,6 +12711,16 @@ dist_core (o)
pasthru (o)
+=head2 ExtUtils::MM_Win95 - method to customize MakeMaker for Win9X
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=back
+
=head2 ExtUtils::MY - ExtUtils::MakeMaker subclass for customization
=over 4
@@ -17507,7 +17733,7 @@ SOCKADDR_UN, pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
=back
-=head2 Storable - persistency for perl data structures
+=head2 Storable - persistence for Perl data structures
=over 4
@@ -17523,6 +17749,10 @@ SOCKADDR_UN, pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
=item CANONICAL REPRESENTATION
+=item FORWARD COMPATIBILITY
+
+utf8 data, restricted hashes, files from future versions of Storable
+
=item ERROR REPORTING
=item WIZARDS ONLY
@@ -17555,8 +17785,6 @@ C<Storable::is_retrieving>
=item CREDITS
-=item TRANSLATIONS
-
=item AUTHOR
=item SEE ALSO
@@ -18802,7 +19030,7 @@ $obj->isa( TYPE ), CLASS->isa( TYPE ), isa( VAL, TYPE ), $obj->can( METHOD
=back
-=head2 Unicode::Collate - use UCA (Unicode Collation Algorithm)
+=head2 Unicode::Collate - Unicode Collation Algorithm
=over 4
@@ -18818,30 +19046,40 @@ alternate, backwards, entry, ignoreName, ignoreChar, level, normalization,
overrideCJK, overrideHangul, preprocess, rearrange, table, undefName,
undefChar, katakana_before_hiragana, upper_before_lower
-=item Other methods
+=item Methods for Collation
C<@sorted = $Collator-E<gt>sort(@not_sorted)>, C<$result =
$Collator-E<gt>cmp($a, $b)>, C<$result = $Collator-E<gt>eq($a, $b)>,
C<$result = $Collator-E<gt>ne($a, $b)>, C<$result = $Collator-E<gt>lt($a,
$b)>, C<$result = $Collator-E<gt>le($a, $b)>, C<$result =
$Collator-E<gt>gt($a, $b)>, C<$result = $Collator-E<gt>ge($a, $b)>,
-C<$sortKey = $Collator-E<gt>getSortKey($string)>, C<$position =
+C<$sortKey = $Collator-E<gt>getSortKey($string)>, C<$sortKeyForm =
+$Collator-E<gt>viewSortKey($string)>, C<$position =
$Collator-E<gt>index($string, $substring)>, C<($position, $length) =
$Collator-E<gt>index($string, $substring)>
+=item Other Methods
+
+UCA_Version, Base_Unicode_Version
+
=item EXPORT
=item TODO
=item CAVEAT
+=item BUGS
+
=back
=item AUTHOR
=item SEE ALSO
-Unicode Collation Algorithm - Unicode TR #10, L<Unicode::Normalize>
+http://www.unicode.org/unicode/reports/tr10/,
+http://www.unicode.org/unicode/reports/tr10/allkeys.txt,
+http://www.unicode.org/unicode/reports/tr15/,
+http://www.unicode.org/unicode/reports/tr18, L<Unicode::Normalize>
=back
diff --git a/t/TEST b/t/TEST
index af9edc8dd8..47560cdc71 100755
--- a/t/TEST
+++ b/t/TEST
@@ -19,6 +19,7 @@ if ($#ARGV >= 0) {
push( @argv, $ARGV[$idx] ), next unless $ARGV[$idx] =~ /^-(\S+)$/;
$core = 1 if $1 eq 'core';
$verbose = 1 if $1 eq 'v';
+ $torture = 1 if $1 eq 'torture';
$with_utf= 1 if $1 eq 'utf8';
$byte_compile = 1 if $1 eq 'bytecompile';
$compile = 1 if $1 eq 'compile';
@@ -110,9 +111,11 @@ unless (@ARGV) {
} else {
warn "$0: cannot open $mani: $!\n";
}
- _find_tests('pod') unless $core;
- _find_tests('x2p') unless $core;
- _find_tests('japh') unless $core;
+ unless ($core) {
+ _find_tests('pod');
+ _find_tests('x2p');
+ _find_tests('japh') if $torture;
+ }
}
# Tests known to cause infinite loops for the perlcc tests.
diff --git a/t/harness b/t/harness
index 1a15ebcca2..fafba45c2a 100644
--- a/t/harness
+++ b/t/harness
@@ -9,11 +9,18 @@ BEGIN {
$ENV{PERL5LIB} = '../lib'; # so children will see it too
}
+my $torture; # torture testing?
+
use Test::Harness;
$Test::Harness::switches = ""; # Too much noise otherwise
$Test::Harness::verbose = shift if @ARGV && $ARGV[0] eq '-v';
+if ($ARGV[0] eq '-torture') {
+ shift;
+ $torture = 1;
+}
+
# Let tests know they're running in the perl core. Useful for modules
# which live dual lives on CPAN.
$ENV{PERL_CORE} = 1;
@@ -57,6 +64,7 @@ if (@ARGV) {
push @tests, <op/*.t>;
push @tests, <uni/*.t>;
push @tests, <lib/*.t>;
+ push @tests, <japh/*.t> if $torture;
push @tests, <win32/*.t> if $^O eq 'MSWin32';
use File::Spec;
my $updir = File::Spec->updir;