summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Ing-Simmons <nik@tiuk.ti.com>2002-06-16 15:16:46 +0000
committerNick Ing-Simmons <nik@tiuk.ti.com>2002-06-16 15:16:46 +0000
commitb0ce607a6dc86b7489b2320651569a94b7a2cea8 (patch)
treeb90bc808207db594587a879ebe37687da99f3c55
parenta1c91408224f6b095b5e4e6988d6b800ff6d1538 (diff)
parentd5d4ec93a4679c6ba299b53290a0903a25094cec (diff)
downloadperl-b0ce607a6dc86b7489b2320651569a94b7a2cea8.tar.gz
Integrate mainline
p4raw-id: //depot/perlio@17257
-rw-r--r--Changes2423
-rw-r--r--Porting/findrfuncs8
-rw-r--r--README.amiga22
-rw-r--r--README.irix13
-rw-r--r--README.tru6471
-rw-r--r--README.vms18
-rw-r--r--hints/amigaos.sh4
-rw-r--r--lib/ExtUtils/Changes11
-rw-r--r--lib/ExtUtils/Command.pm10
-rw-r--r--lib/ExtUtils/Installed.pm6
-rw-r--r--lib/ExtUtils/MM_MacOS.pm2
-rw-r--r--lib/ExtUtils/MM_Unix.pm9
-rw-r--r--lib/ExtUtils/MakeMaker.pm187
-rw-r--r--lib/ExtUtils/t/00setup_dummy.t23
-rw-r--r--lib/ExtUtils/t/Command.t3
-rw-r--r--lib/ExtUtils/t/Installed.t9
-rw-r--r--lib/ExtUtils/t/writemakefile_args.t23
-rw-r--r--lib/Test/Harness.pm13
-rw-r--r--lib/Test/Harness/Changes12
-rw-r--r--lib/Test/Harness/Straps.pm19
-rw-r--r--lib/Test/Harness/t/callback.t17
-rw-r--r--lib/Test/Harness/t/strap-analyze.t48
-rw-r--r--lib/Test/Harness/t/test-harness.t42
-rw-r--r--op.c2
-rw-r--r--perl.c7
-rw-r--r--perlio.c2
-rw-r--r--perlsfio.h6
-rw-r--r--pod/perldelta.pod19
-rw-r--r--pod/perlfunc.pod2
-rw-r--r--pp.c2
-rw-r--r--sv.c2
-rw-r--r--t/lib/MakeMaker/Test/Utils.pm2
32 files changed, 2456 insertions, 581 deletions
diff --git a/Changes b/Changes
index 6544e04e13..7fc7126468 100644
--- a/Changes
+++ b/Changes
@@ -28,6 +28,86 @@ example from http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/
Version v5.7.X Development release working toward v5.8
--------------
____________________________________________________________________________
+[ 17251] By: jhi on 2002/06/15 15:39:09
+ Log: Spurious empty statements.
+ Branch: perl
+ ! op.c perl.c perlio.c sv.c
+____________________________________________________________________________
+[ 17250] By: jhi on 2002/06/15 15:34:51
+ Log: Possible cure for
+
+ Subject: Re: Thread bug in 5.8RC1 Win32
+ From: Alessandro Forghieri <alf@orion.it>
+ Date: Sat, 15 Jun 2002 12:56:35 +0200
+ Message-ID: <20020615125635.A25110@alpha.orion.it>
+ Branch: perl
+ ! perl.c
+____________________________________________________________________________
+[ 17249] By: jhi on 2002/06/14 23:14:44
+ Log: findrfuncs: small tweaks.
+ Branch: perl
+ ! Porting/findrfuncs
+____________________________________________________________________________
+[ 17248] By: jhi on 2002/06/14 22:34:27
+ Log: Group the debugger changes in one place.
+ Branch: perl
+ ! pod/perldelta.pod
+____________________________________________________________________________
+[ 17247] By: jhi on 2002/06/14 19:26:15
+ Log: Detypo.
+ Branch: perl
+ ! pod/perlfunc.pod
+____________________________________________________________________________
+[ 17246] By: jhi on 2002/06/14 19:18:44
+ Log: Plug potential confusion.
+ Branch: perl
+ ! pod/perldelta.pod
+____________________________________________________________________________
+[ 17245] By: jhi on 2002/06/14 19:13:16
+ Log: Attribute::Handlers has been adopted by Arthur.
+ Branch: perl
+ ! pod/perldelta.pod
+____________________________________________________________________________
+[ 17244] By: jhi on 2002/06/14 19:04:53
+ Log: README.irix update.
+ Branch: perl
+ ! README.irix
+____________________________________________________________________________
+[ 17243] By: jhi on 2002/06/14 19:00:08
+ Log: README.tru64 update.
+ Branch: perl
+ ! README.tru64
+____________________________________________________________________________
+[ 17242] By: jhi on 2002/06/14 18:48:33
+ Log: Not that urgent a fix since inside #if 0, but still...
+ Branch: perl
+ ! perlsfio.h
+____________________________________________________________________________
+[ 17241] By: nick on 2002/06/14 17:15:38
+ Log: Integrate mainline
+ Branch: perlio
+ !> Changes Configure NetWare/config.wc NetWare/config_H.wc
+ !> Porting/Glossary Porting/config.sh Porting/config_H
+ !> config_h.SH ext/Socket/socketpair.t lib/ExtUtils/t/Constant.t
+ !> lib/Pod/t/basic.t lib/Term/Cap.t patchlevel.h
+ !> pod/perldelta.pod pod/perltoc.pod pp_sys.c
+____________________________________________________________________________
+[ 17240] By: jhi on 2002/06/14 14:25:38
+ Log: OS/2 status from John Poltorak.
+ Branch: perl
+ ! pod/perldelta.pod
+____________________________________________________________________________
+[ 17239] By: jhi on 2002/06/14 14:05:37
+ Log: Regen Configure; regen perltoc.
+ Branch: perl
+ ! Configure Porting/Glossary Porting/config.sh Porting/config_H
+ ! config_h.SH pod/perltoc.pod
+____________________________________________________________________________
+[ 17238] By: jhi on 2002/06/14 13:40:23
+ Log: Update Changes.
+ Branch: perl
+ ! Changes patchlevel.h
+____________________________________________________________________________
[ 17237] By: jhi on 2002/06/14 13:32:22
Log: NetWare diff for XS::APItest.
Branch: perl
@@ -109,7 +189,9 @@ ____________________________________________________________________________
[ 17225] By: jhi on 2002/06/13 21:59:07
Log: Don't assume too much about how print will scale
your fp numbers; be explicit and use printf instead--
- the assumption broke UNICOS (from Mark Lutz)
+ the assumption broke in UNICOS (from Mark Lutz)
+ (Use %.0f instead of %d because in 32-bit systems
+ the %d may end producing -1 or something else odd.)
Branch: perl
! t/lib/warnings/toke
____________________________________________________________________________
@@ -471,8 +553,9 @@ ____________________________________________________________________________
! pod/perlfunc.pod
____________________________________________________________________________
[ 17172] By: jhi on 2002/06/10 19:27:23
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 17171]
binmode(FH); to act like binmode(FH,":bytes") as well as
turning off CRLF features.
Branch: perl
@@ -543,8 +626,9 @@ ____________________________________________________________________________
! sv.c
____________________________________________________________________________
[ 17162] By: jhi on 2002/06/10 12:31:32
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 17159]
Tune test to run in UTF-8 locales
- test file must be opened as :bytes or high-bit octets
will be UTF-8 encoded on write in such locales, so
@@ -1245,8 +1329,9 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 17056] By: jhi on 2002/06/07 13:14:44
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 17053]
Don't discard read data on flush if seek fails.
Branch: perl
!> perlio.c
@@ -1402,10 +1487,11 @@ ____________________________________________________________________________
! NetWare/t/NWScripts.pl x2p/a2p.h
____________________________________________________________________________
[ 17032] By: jhi on 2002/06/06 12:47:34
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 17030]
doio.c tweaks
- - see SV passed to dup type open "looks_like_number"
+ - see SV passed to dup type open "looks_like__number"
- apply layers to pipe opens.
Branch: perl
!> doio.c
@@ -1699,7 +1785,7 @@ ____________________________________________________________________________
!> ext/IO/lib/IO/Pipe.pm
____________________________________________________________________________
[ 16989] By: jhi on 2002/06/05 00:07:15
- Log: Integrate macperl chages #16974 and #16975;
+ Log: Integrate macperl changes #16974 and #16975;
nativize() isn't happy with absolute Mac paths
@@ -2205,8 +2291,9 @@ ____________________________________________________________________________
! lib/ExtUtils/MM_NW5.pm makedef.pl toke.c
____________________________________________________________________________
[ 16921] By: jhi on 2002/05/31 12:39:48
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16920]
Use File::Spec for blib expectance tests - skating round
existing MacOS and VMS hacks.
Branch: perl
@@ -2302,12 +2389,10 @@ ____________________________________________________________________________
! ext/Storable/Storable.xs ext/Storable/t/malice.t
____________________________________________________________________________
[ 16908] By: jhi on 2002/05/30 20:49:34
- Log: Integrate perlio;
-
- "we have a belt, braces, trousers glued on and a kilt over the
- top solution" NI-S
+ Log: Integrate perlio:
- (one more bench to the barricade against glibc 2.3)
+ [ 16895]
+ Play safe and avoid writes to stdio's buffer (for glibc2.3)
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -2991,8 +3076,12 @@ ____________________________________________________________________________
! NetWare/bat/Setwatcom.bat lib/ExtUtils/MM_NW5.pm
____________________________________________________________________________
[ 16810] By: jhi on 2002/05/27 16:02:10
- Log: Integrate perlio;
+ Log: Integrate perlio:
+
+ [ 16809]
+ Add IO::Scalar fail case to the tests.
+ [ 16808]
Fix for the IO::Scalar bug (I think).
At tie time break the loop but in a different place:
A. Increment REFCNT of the RV involved in the self-tie
@@ -3001,7 +3090,9 @@ ____________________________________________________________________________
Break the connection between the RV and its referent
so that we do not try and free it (again).
- Add IO::Scalar fail case to the tests.
+ [ 16805]
+ **** UNSAFE **** partial fix for IO::Scalar and local ties.
+ Only op/local.t fails but it is nasty... try valgrind on other machine.
Branch: perl
!> mg.c sv.c t/op/tie.t
____________________________________________________________________________
@@ -3093,7 +3184,10 @@ ____________________________________________________________________________
! pod/perlipc.pod
____________________________________________________________________________
[ 16795] By: jhi on 2002/05/26 15:11:00
- Log: Integrate perlio; Update perlipc.pod for new signals.
+ Log: Integrate perlio:
+
+ [ 16794]
+ Update perlipc.pod for new signals
Branch: perl
!> pod/perlipc.pod
____________________________________________________________________________
@@ -3152,7 +3246,10 @@ ____________________________________________________________________________
! Configure
____________________________________________________________________________
[ 16785] By: jhi on 2002/05/25 18:19:56
- Log: Integrate perlio; Fix VMS ungetc fix for platforms like NetBSD.
+ Log: Integrate perlio:
+
+ [ 16784]
+ Fix VMS ungetc fix for platforms like NetBSD.
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -3422,7 +3519,22 @@ ____________________________________________________________________________
! ext/Encode/t/mime-header.t
____________________________________________________________________________
[ 16745] By: jhi on 2002/05/22 21:57:48
- Log: Integrate perlio; VMS vs perlio.
+ Log: Integrate perlio:
+
+ [ 16740]
+ #ifdef VMS code was not ported right from sv.c - s/fp/stdio/
+
+ [ 16739]
+ Fix for ungetc() issues flagged by ext/Encode/t/perlio.t on VMS.
+ ungetc() and buffer snooping may not mix. So use buffer snoop
+ hooks to avoid ungetc() where available.
+ unread() falls back to using :pending layer, and fill has
+ VMS specific code (which should not get used) or ungetc()
+ which should work.
+
+ [ 16737]
+ Flag the VMS-problem-causing part of :encoding
+ for enhancement. (Problem still needs fixing in perlio.c)
Branch: perl
!> ext/PerlIO/encoding/encoding.xs perlio.c
____________________________________________________________________________
@@ -3476,7 +3588,7 @@ ____________________________________________________________________________
! ext/PerlIO/encoding/encoding.xs
____________________________________________________________________________
[ 16736] By: jhi on 2002/05/22 16:20:38
- Log: UNICOS: using uname -m is wrong since what matter
+ Log: UNICOS: using uname -m is wrong since what matters
is what CPUs (FPUs) we have.
Branch: perl
! hints/unicos.sh
@@ -4047,8 +4159,9 @@ ____________________________________________________________________________
! pp_ctl.c t/op/caller.t
____________________________________________________________________________
[ 16661] By: jhi on 2002/05/17 19:13:18
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16657]
Fix the crlf.t buffer leak
- actually a generic PerlIOBuf_xxx derived leak-on-pop, but :crlf
flagged it because it is more often popped without stream
@@ -4350,8 +4463,9 @@ ____________________________________________________________________________
! README.dos djgpp/djgppsed.sh lib/File/stat.t t/op/alarm.t
____________________________________________________________________________
[ 16618] By: jhi on 2002/05/16 02:57:21
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16613]
Make open fail when layer string does not parse.
Branch: perl
+> ext/PerlIO/t/fail.t
@@ -5216,18 +5330,20 @@ ____________________________________________________________________________
! pod/perldelta.pod
____________________________________________________________________________
[ 16497] By: jhi on 2002/05/08 22:11:21
- Log: Integrate perlio;
+ Log: Integrate perlio:
+
+ [ 16496]
+ 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.
+ [ 16495]
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
____________________________________________________________________________
@@ -5268,8 +5384,9 @@ ____________________________________________________________________________
! Porting/p4genpatch
____________________________________________________________________________
[ 16491] By: jhi on 2002/05/08 13:59:16
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16487]
Avoid pointless re-encode of data in :encoding's read buffer
on a close
Branch: perl
@@ -6110,8 +6227,9 @@ ____________________________________________________________________________
! ext/Encode/lib/Encode/Supported.pod ext/Encode/t/Aliases.t
____________________________________________________________________________
[ 16368] By: jhi on 2002/05/03 12:31:52
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16367]
Several of non-default builds now seem to work reasonably well
English.t seems to fail on an errno test, and socketpair blathers
about something.
@@ -6120,22 +6238,35 @@ ____________________________________________________________________________
function tables (latter was done in earlier change).
Update comments in Makefile.mk
+ [ 16366]
Finish off 16350 for non-PERLIO build on linux,
non PERL_IMPLICIT_SYS parts of iperlsys.h had junk
for some slots which now perlsdio.h is targeting.
+ [ 16352]
setbuf / setvbuf are not PerlIO_ concepts
+ [ 16351]
perl_clone is a threads thing
+ [ 16350]
+ *** EXPERIMENTAL ***
Have perlsdio.h use the iperlsys.h aliases and see
if that helps non-PERLIO IMP_SYS on Win32.
(Miniperl okay on linux).
+ [ 16349]
+ Win32 builds and mostly works for non-USE_PERLIO non-USE_IMP_SYS case.
+ - move body of fdupopen() from perlhost.h to win32.h as win32_fdupopen()
+ - use it in perlio.c
+
+ [ 16347]
More layer syms
+ [ 16346]
Use PerlSIO_fdupopen() if not using PerlIO
+ [ 16345]
Do not build if not using layers
Branch: perl
!> XSUB.h iperlsys.h makedef.pl perlio.c perlio.h perlsdio.h
@@ -6303,8 +6434,9 @@ ____________________________________________________________________________
! ext/Encode/lib/Encode/Guess.pm
____________________________________________________________________________
[ 16343] By: jhi on 2002/05/02 13:14:39
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16341]
Remove show-stoppers to non-PERLIO Win32 builds
(still not a very good show).
Branch: perl
@@ -6341,8 +6473,9 @@ ____________________________________________________________________________
!> mg.c
____________________________________________________________________________
[ 16338] By: jhi on 2002/05/02 12:37:22
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16335]
Fix the "PerlIO require leak". Snag was that clean_objs
autoloaded DESTROY (needing IO) after known layers had
been freed. Postpone layer list free to PerlIO_cleanup,
@@ -6610,7 +6743,14 @@ ____________________________________________________________________________
! ext/Encode/bin/ucm2table ext/Encode/t/fallback.t
____________________________________________________________________________
[ 16299] By: jhi on 2002/05/01 11:53:21
- Log: Integrate perlio; symbol cleanups.
+ Log: Integrate perlio:
+
+ [ 16297]
+ Remove "spurious" (and unnecessary) variables from layer_syms
+ Win32 (Win2k), MinGW-1.1 - passes all tests! ;-)
+
+ [ 16296]
+ perl embed.pl to update global.sym
Branch: perl
!> global.sym makedef.pl
____________________________________________________________________________
@@ -6690,8 +6830,9 @@ ____________________________________________________________________________
! lib/Getopt/Long.pm
____________________________________________________________________________
[ 16287] By: jhi on 2002/04/30 19:51:08
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16285]
Attempt at sanity in PerlIO/makedef.pl world:
1. Add comments to what each clump of symbols is for
2. Explicitly export layer syms like I thought they were
@@ -6813,8 +6954,9 @@ ____________________________________________________________________________
! hints/openbsd.sh
____________________________________________________________________________
[ 16272] By: jhi on 2002/04/29 20:14:39
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16270]
Adding Encode::* to .pm creates stash at compile time
which means we need a stronger check on Encode at boot time.
Branch: perl
@@ -7003,17 +7145,20 @@ ____________________________________________________________________________
! ext/PerlIO/t/fallback.t
____________________________________________________________________________
[ 16247] By: jhi on 2002/04/28 15:26:39
- Log: Integrate perlio;
+ Log: Integrate perlio:
- Builds under -Uuseperlio
- Uses PUSHSTACK/POPSTACK in :encoding and :Via
+ [ 16246]
+ Have :encoding() default to perlqq style fallbacks.
+ Add test for that.
+ [ 16245]
Use (file PerlIO::Layer 'perlio') rather than $Config{useperlio}
as gate on layer tests which fail on -Dusesfio
(ext/XS/Typemap/Typemap.t still fails on -Dusesfio)
- Have :encoding() default to perlqq style fallbacks.
- Add test for that.
+ [ 16244]
+ Builds under -Uuseperlio
+ Uses PUSHSTACK/POPSTACK in :encoding and :Via
Branch: perl
+> ext/PerlIO/t/fallback.t
!> MANIFEST ext/Encode/Encode.xs ext/PerlIO/PerlIO.t
@@ -7198,8 +7343,9 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 16224] By: jhi on 2002/04/27 17:53:20
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16221]
Correct which var is nulled, stack movement protection.
Branch: perl
!> ext/PerlIO/encoding/encoding.xs
@@ -7223,8 +7369,9 @@ ____________________________________________________________________________
! ext/PerlIO/encoding/encoding.xs
____________________________________________________________________________
[ 16220] By: jhi on 2002/04/27 16:27:18
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 16216]
Fix weird warnings and/pr segfaults on binmode(,"encoding(...)")
- if encoding loads Encode then stack grows.
- pp_binmode was not allowing for that to happen
@@ -7270,15 +7417,28 @@ ____________________________________________________________________________
! pp_sys.c
____________________________________________________________________________
[ 16215] By: jhi on 2002/04/27 15:52:24
- Log: Integrate perlio;
+ Log: Integrate perlio:
+
+ [ 16211]
+ Re-instate $PerlIO::encoding::check at boot.
+ (Retaining Dan's XS side require though I don't see need.)
+ [ 16207]
Fix fd leak on Via(bogus).
Finish implementing PerlIOVia_open().
Export more guts of PerlIO_* so Via_open() can work.
Fix various PerlIO_allocate() features exposed by above.
- Re-instate $PerlIO::encoding::check at boot.
- (Retaining Dan's XS side require though I don't see need.)
+ [ 16027]
+ Fix perlio for Encode/t/perlio.t's SKIPPED TODO tests,
+ and change test not to skip them.
+
+ [ 16023]
+ Some tweaks for encodings which need lines.
+ Also disabled trial of using fallbacks.
+
+ [ 16022]
+ Various tweaks to Encode
Branch: perl
!> embed.fnc ext/PerlIO/Via/Via.xs
!> ext/PerlIO/encoding/encoding.pm
@@ -7420,7 +7580,8 @@ ____________________________________________________________________________
! ext/Digest/MD5/t/files.t
____________________________________________________________________________
[ 16195] By: jhi on 2002/04/26 17:56:51
- Log: Subject: FIXIN problem under Win32
+ Log: (retracted by #16229)
+ Subject: FIXIN problem under Win32
From: Nikola Knezevic <indy@tesla.rcub.bg.ac.yu>
Date: Thu, 25 Apr 2002 23:03:31 +0200
Message-ID: <8920180377.20020425230331@tesla.rcub.bg.ac.yu>
@@ -8855,14 +9016,23 @@ ____________________________________________________________________________
! lib/Memoize/t/errors.t
____________________________________________________________________________
[ 16019] By: jhi on 2002/04/20 14:26:17
- Log: Integrate perlio;
+ Log: Integrate perlio:
- Tweak to Encode.xs to avoid buffer overrun.
+ [ 16018]
+ Fill in the PERLIO sections.
+ [ 16017]
Add :bytes to POD part.
Remove 'alias' to Encode now it exists as a module.
- Fill in the PERLIO sections.
+ [ 16014]
+ Tweak to Encode.xs to avoid buffer overrun.
+
+ [ 16007]
+ Silence warning generating warning message for U+FFFF does not map etc.
+
+ [ 15912]
+ XS versions of encode/decode for Encode::Unicode
Branch: perl
!> ext/Encode/Encode.xs lib/PerlIO.pm pod/perlrun.pod
____________________________________________________________________________
@@ -9691,11 +9861,13 @@ ____________________________________________________________________________
! Configure reentr.pl
____________________________________________________________________________
[ 15909] By: jhi on 2002/04/14 14:10:14
- Log: Integrate perlio;
-
- Avoid expensive paranoid check that decoder does return legal UTF-8
+ Log: Integrate perlio:
+ [ 15904]
Disable test code (assertions) in CRLF layer.
+
+ [ 15903]
+ Avoid expensive paranoid check that decoder does return legal UTF-8
Branch: perl
!> ext/Encode/Encode.xs perlio.c
____________________________________________________________________________
@@ -10094,8 +10266,9 @@ ____________________________________________________________________________
! pod/perldelta.pod
____________________________________________________________________________
[ 15848] By: jhi on 2002/04/10 14:22:12
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 15847]
Add a \t to Win32 pm_to_blib $(TOUCH) line.
Branch: perl
!> lib/ExtUtils/MM_Win32.pm
@@ -10127,8 +10300,9 @@ ____________________________________________________________________________
! Makefile.SH
____________________________________________________________________________
[ 15842] By: jhi on 2002/04/10 11:47:23
- Log: Integrate perlio.
+ Log: Integrate perlio:
+ [ 15840]
We have been 5.7.3 for a while - install there ...
Branch: perl
!> win32/makefile.mk
@@ -10238,8 +10412,9 @@ ____________________________________________________________________________
! Configure
____________________________________________________________________________
[ 15827] By: jhi on 2002/04/09 12:45:56
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 15826]
Patch up Encode for Tk
Branch: perl
!> ext/Encode/Encode.pm ext/Encode/lib/Encode/Alias.pm
@@ -10891,8 +11066,9 @@ ____________________________________________________________________________
! lib/Tie/File/t/26_twrite.t
____________________________________________________________________________
[ 15745] By: jhi on 2002/04/05 13:07:21
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 15744]
Not only did UCS-2 have dodgy name it was buggy.
Branch: perl
!> ext/Encode/lib/Encode/10646_1.pm
@@ -11259,14 +11435,16 @@ ____________________________________________________________________________
! ext/threads/threads.pm pod/perldiag.pod
____________________________________________________________________________
[ 15699] By: jhi on 2002/04/03 13:35:58
- Log: Integrate perlio;
-
- Add -hiertype option to xsubpp for easier mapping C++ with namespaces.
+ Log: Integrate perlio:
+ [ 15698]
Fix segfaults when mainthread exits with other threads running:
- track number of running threads
- if main thread calls perl_destruct() with other threads running
skip most of cleanup (with a warning).
+
+ [ 15696]
+ Add -hiertype option to xsubpp for easier mapping C++ with namespaces.
Branch: perl
!> embed.fnc embed.h embedvar.h ext/threads/threads.xs global.sym
!> lib/ExtUtils/xsubpp perl.c perl.h perlapi.h perlvars.h
@@ -11431,11 +11609,13 @@ ____________________________________________________________________________
! ext/Encode/Encode.xs
____________________________________________________________________________
[ 15676] By: jhi on 2002/04/02 13:22:51
- Log: Integrate perlio;
-
- Calculate buffer size needs in float to avoid 32-bit overflow.
+ Log: Integrate perlio:
+ [ 15675]
Add buffer size growth test.
+
+ [ 15674]
+ Calculate buffer size needs in float to avoid 32-bit overflow.
Branch: perl
+> ext/Encode/t/grow.t
!> MANIFEST ext/Encode/Encode.xs ext/Encode/MANIFEST
@@ -11612,8 +11792,9 @@ ____________________________________________________________________________
! MANIFEST utils/Makefile
____________________________________________________________________________
[ 15657] By: jhi on 2002/04/01 14:28:09
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 15653]
Be more explicit testing for \015 not \r
Branch: perl
!> MANIFEST ext/Socket/socketpair.t pod/perldelta.pod
@@ -12742,11 +12923,13 @@ ____________________________________________________________________________
! t/lib/Math/BigInt/Subclass.pm
____________________________________________________________________________
[ 15522] By: jhi on 2002/03/26 16:07:58
- Log: Integrate perlio;
-
- Fix [ID 20020326.001] - cr/lf spanning buffer boundary
+ Log: Integrate perlio:
+ [ 15521]
Testcase for crlf spanning buffer boundary
+
+ [ 15520]
+ Fix [ID 20020326.001] - cr/lf spanning buffer boundary
Branch: perl
+> t/io/crlf.t
!> MANIFEST perlio.c
@@ -13185,8 +13368,9 @@ ____________________________________________________________________________
! ext/Encode/lib/Encode/Supported.pod ext/Encode/t/Aliases.t
____________________________________________________________________________
[ 15466] By: jhi on 2002/03/24 13:58:44
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 15462]
Avoid core-dump in Encode with PERLIO=mmap
Branch: perl
!> ext/Encode/Encode.xs
@@ -13588,11 +13772,17 @@ ____________________________________________________________________________
! pod/perldelta.pod
____________________________________________________________________________
[ 15413] By: jhi on 2002/03/22 13:20:48
- Log: Integrate perlio;
-
- Fix [ID 20020318.003] cannot open STDOUT into in memory variable
+ Log: Integrate perlio:
+ [ 15412]
Check for sanity of UTF-8 keys in hashes
+ (feel free to add more tests...)
+
+ [ 15410]
+ Fix [ID 20020318.003] cannot open STDOUT into in memory variable
+ - when (e.g.) STDOUT is char special file and gets IoOFP
+ created - do _NOT_ pass num_svs as that fopen-s stringified
+ glob, and not fdopen-s the fd.
Branch: perl
+> t/op/utfhash.t
!> MANIFEST doio.c
@@ -13838,7 +14028,10 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 15384] By: jhi on 2002/03/21 14:03:50
- Log: Integrate perlio: missing tabs in makefile.mk.
+ Log: Integrate perlio:
+
+ [ 15381]
+ Restore tabs so dmake will parse file!
Branch: perl
!> win32/makefile.mk
____________________________________________________________________________
@@ -14287,8 +14480,9 @@ ____________________________________________________________________________
! ext/B/t/xref.t
____________________________________________________________________________
[ 15322] By: jhi on 2002/03/19 14:50:02
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 15314]
Move docs for Encode::valid_utf8 (which does not exist)
to be docs for utf8::valid() (which does).
Branch: perl
@@ -14548,8 +14742,9 @@ ____________________________________________________________________________
! hints/solaris_2.sh
____________________________________________________________________________
[ 15285] By: jhi on 2002/03/18 13:24:03
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 15282]
Tidy the "does not map" message for non-characters
(e.g. iso-8859-3 "\xA5").
Branch: perl
@@ -14619,15 +14814,17 @@ ____________________________________________________________________________
! regexec.c
____________________________________________________________________________
[ 15275] By: jhi on 2002/03/17 20:14:18
- Log: Integrate perlio;
-
- Avoid overwrite of un-allocated memory when SvCUR > SvLEN
+ Log: Integrate perlio:
+ [ 15274]
Other :encoding oddities
- we should really pop while we can still make method calls
in case DESTROY does something.
- Provide a no-op DESTROY
- Use SvPV_only() rather than just SvPV_on()
+
+ [ 15273]
+ Avoid overwrite of un-allocated memory when SvCUR > SvLEN
Branch: perl
!> ext/Encode/Encode.pm ext/Encode/Encode.xs
!> ext/Encode/lib/Encode/Encoding.pm sv.c
@@ -14937,7 +15134,10 @@ ____________________________________________________________________________
! lib/perl5db.pl
____________________________________________________________________________
[ 15239] By: jhi on 2002/03/15 16:11:17
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 15235]
+ Add the binmode()s to make JP.t pass on Win32
Branch: perl
!> embed.fnc ext/Encode/t/JP.t
____________________________________________________________________________
@@ -15008,7 +15208,13 @@ ____________________________________________________________________________
! ext/Encode/t/JP.t
____________________________________________________________________________
[ 15234] By: nick on 2002/03/15 07:20:49
- Log: Integrate perlio
+ Log: Integrate perlio:
+
+ [ 15233]
+ Mark JP.t's data files as binary
+
+ [ 15011]
+ Avoid $Id$ cleverness and just have a $VERSION.
Branch: perl
!> ext/Encode/t/table.euc ext/Encode/t/table.ref
____________________________________________________________________________
@@ -16793,8 +16999,16 @@ ____________________________________________________________________________
!> ext/Encode/compile
____________________________________________________________________________
[ 15008] By: jhi on 2002/03/04 17:11:19
- Log: Integrate perlio: win32 tweaks. (ext/Encode/compile
- updates not integrated, something odd going on in there.)
+ Log: Integrate perlio:
+
+ [ 15002]
+ Win32 tweak
+
+ [ 14999]
+ Win32 hack
+
+ [ 14995]
+ Remove debugging assert
Branch: perl
!> ext/Encode/t/JP.t ext/threads/shared/shared.xs
!> lib/Tie/File/t/16_handle.t
@@ -17589,7 +17803,7 @@ ____________________________________________________________________________
____________________________________________________________________________
[ 14899] By: jhi on 2002/02/27 17:50:09
Log: Repatch from Robin Barker: anon subs in C<package;> are
- now __ANON__::__ANON__ (should help for mod_perl package
+ now __ANON__::__ANON__ (should help for mod_perl breakage
since #12251)
Branch: perl
! gv.c op.c t/op/runlevel.t toke.c
@@ -18337,7 +18551,12 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 14791] By: jhi on 2002/02/20 15:24:19
- Log: Integrate change #14778 from maintperl.
+ Log: Integrate change #14778 from maintperl;
+
+ constant folding on the range operator had the effect of disabling
+ peephole optimizations in all the siblings of the range OP; the
+ effect of this was that barewords could escape strictures when
+ they were hiding in such places
Branch: perl
! t/lib/strict/subs
!> op.c
@@ -19012,8 +19231,9 @@ ____________________________________________________________________________
! ext/B/B/Deparse.pm ext/B/t/deparse.t
____________________________________________________________________________
[ 14692] By: jhi on 2002/02/14 19:52:26
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14685]
Make dependencies more precise (for nmake)
Branch: perl
!> ext/Encode/EUC_JP/Makefile.PL
@@ -19100,8 +19320,9 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 14680] By: jhi on 2002/02/13 13:41:50
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14677]
Do not lc() the file names before doing dirname() or they don't match.
Branch: perl
!> lib/ExtUtils/t/Installed.t
@@ -19353,20 +19574,24 @@ ____________________________________________________________________________
! os2/os2ish.h
____________________________________________________________________________
[ 14640] By: jhi on 2002/02/11 14:11:13
- Log: Integrate perlio;
-
- Re-structure Japanese encodings - part 1
+ Log: Integrate perlio:
- Split Japanese encodings - part 2
- - build separate .c files with separate 'compile' steps
- - overall Japanese.xs / Japanese.pm which loads them
+ [ 14639]
+ Patch up the failing multi-byte write case, and un-skip
+ the test.
+ [ 14638]
Add test for Japanese encoding (well euc-jp anyway).
Fix one bug shown by above
Skip test which does not pass yet.
- Patch up the failing multi-byte write case, and un-skip
- the test.
+ [ 14637]
+ Split Japanese encodings - part 2
+ - build separate .c files with separate 'compile' steps
+ - overall Japanese.xs / Japanese.pm which loads them
+
+ [ 14636]
+ Re-structure Japanese encodings - part 1
Branch: perl
+> ext/Encode/EUC_JP/Japanese.pm ext/Encode/t/Japanese.t
+> ext/Encode/t/table.euc ext/Encode/t/table.ref
@@ -19434,11 +19659,13 @@ ____________________________________________________________________________
! lib/perl5db.pl
____________________________________________________________________________
[ 14631] By: jhi on 2002/02/10 22:11:53
- Log: Integrate perlio;
-
- Borland/Win32 tuning
+ Log: Integrate perlio:
+ [ 14626]
Move PerlIO_perlio to layer_syms where it belongs?
+
+ [ 14625]
+ Borland/Win32 tuning
Branch: perl
!> makedef.pl perlio.sym t/op/stat.t win32/config_H.bc
____________________________________________________________________________
@@ -19497,14 +19724,15 @@ ____________________________________________________________________________
! lib/ExtUtils/t/Installed.t
____________________________________________________________________________
[ 14621] By: jhi on 2002/02/10 15:07:21
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14618]
Nick Clark's tweaks to Encode compile process
1. Use decimal constants to unit string arrays rather than
very long string litterals (latter having possible "\0"
on end issues, and needing ANSI C line splicing).
2. Replace tail-recursion during insert process with itteration.
- Nick C sees 12% speedup from these.
+ Nick C sees 12peedup from these.
Branch: perl
!> ext/Encode/Encode.pm ext/Encode/compile
____________________________________________________________________________
@@ -19652,8 +19880,9 @@ ____________________________________________________________________________
! t/op/taint.t t/run/fresh_perl.t
____________________________________________________________________________
[ 14599] By: jhi on 2002/02/08 14:05:12
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14595]
Extract something from yesterdays effort - convert my mail on pad
data structures (incoporating Sarathy's corrections/clarifications)
into POD in cv.h which gets autodoc.pl'ed into pod/perlintern.pod.
@@ -19783,8 +20012,9 @@ ____________________________________________________________________________
! ext/Encode/Encode.xs ext/Encode/Makefile.PL
____________________________________________________________________________
[ 14577] By: jhi on 2002/02/06 15:38:25
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14575]
One way to avoid OS390 winge about #line directives.
Branch: perl
!> ext/Encode/EUC_JP/Makefile.PL
@@ -19819,7 +20049,8 @@ ____________________________________________________________________________
! lib/encoding.pm lib/encoding.t
____________________________________________________________________________
[ 14571] By: jhi on 2002/02/06 14:44:27
- Log: EBCDIC: Unicode::Normalize NFC emits EBCDIC code points
+ Log: (retracted by #14846)
+ EBCDIC: Unicode::Normalize NFC emits EBCDIC code points
for the low 256. Now tweaked the tests, but maybe it's
the module that needs few NATIVE_TO_UNI()s somewhere?
Branch: perl
@@ -19873,8 +20104,9 @@ ____________________________________________________________________________
!> utf8.h
____________________________________________________________________________
[ 14564] By: jhi on 2002/02/05 17:05:40
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14563]
More Encode tweaks:
- make expensive and marginal substring search optional (-O)
- enable -O for ASCII-oid encodings (search space is small)
@@ -19995,12 +20227,13 @@ ____________________________________________________________________________
! regcomp.c
____________________________________________________________________________
[ 14546] By: jhi on 2002/02/04 04:41:02
- Log: Integrate perlio.
-
- Carry on where we left off if we have to grow destination
- SV during XS encode/decode
+ Log: Integrate perlio:
+ [ 14545]
Remove debugging warning, be consistent about API fails.
+
+ [ 14544]
+ Carry on where we left off if we have to grow destination SV during XS encode/decode
Branch: perl
!> ext/Encode/Encode.xs
____________________________________________________________________________
@@ -20043,8 +20276,9 @@ ____________________________________________________________________________
! ext/Encode/Encode.xs
____________________________________________________________________________
[ 14538] By: jhi on 2002/02/03 18:13:07
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14536]
Stable intermediate point in Encode cleanup.
:encode(euc-jp) works on Dan's table.euc
Much buffer copying and other silliness remains.
@@ -20088,12 +20322,14 @@ ____________________________________________________________________________
! pod/perlfaq6.pod pod/perlfaq7.pod
____________________________________________________________________________
[ 14531] By: jhi on 2002/02/03 15:35:28
- Log: Integrate perlio;
-
- Re-indent Encode.xs
+ Log: Integrate perlio:
+ [ 14526]
Fix SvGROW on an SV with SvLEN == 0 - copy in any existing data.
(Mis-feature discovered by Encode.)
+
+ [ 14518]
+ indent -kr -nce and some manual tweaks to match perl style.
Branch: perl
!> ext/Encode/Encode.pm ext/Encode/Encode.xs sv.c
____________________________________________________________________________
@@ -20206,8 +20442,9 @@ ____________________________________________________________________________
!> t/op/lc.t t/op/stat.t t/run/switches.t utf8.c
____________________________________________________________________________
[ 14516] By: jhi on 2002/02/01 16:46:16
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14515]
Minor Encode tweaks:
- move Encode.pm back to top of Encode like normal XS extension
- avoid .def as a file extension (Win32 builds)
@@ -20332,12 +20569,16 @@ ____________________________________________________________________________
! MANIFEST ext/Encode/Makefile.PL
____________________________________________________________________________
[ 14500] By: jhi on 2002/01/30 14:05:13
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14499]
Collect some stats during compile process.
Experiment with effect of bundling all EUC-JP, EUC-CN, EUC-KR
as one XS - inconclusive - marginal win?
Add some comments to encode.h
+
+ [ 14490]
+ Basics of a compiled Encode XS extension
Branch: perl
!> ext/Encode/EUC_JP/Makefile.PL ext/Encode/compile
!> ext/Encode/encode.h
@@ -20515,8 +20756,9 @@ ____________________________________________________________________________
! t/op/append.t
____________________________________________________________________________
[ 14478] By: jhi on 2002/01/28 21:19:40
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14477]
Set makefile.mk CCHOME etc. for default locations of MinGW and free
Borland compilers. (Borland builds one or two oddities.)
Branch: perl
@@ -20594,7 +20836,13 @@ ____________________________________________________________________________
! lib/warnings.t t/lib/warnings/perl
____________________________________________________________________________
[ 14464] By: jhi on 2002/01/28 13:04:58
- Log: Integrate perlio; the 0nothread test failure without threads.
+ Log: Integrate perlio:
+
+ [ 14462]
+ 1st attempt at skipping broke threads case.
+
+ [ 14461]
+ Skip new threads::shared test unless -Duseithreads
Branch: perl
!> ext/threads/shared/t/0nothread.t
____________________________________________________________________________
@@ -20773,8 +21021,9 @@ ____________________________________________________________________________
! lib/Pod/t/Usage.t
____________________________________________________________________________
[ 14435] By: jhi on 2002/01/26 22:41:05
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14434]
"All tests successful" VC6.0 Win32
(Update config.vc to need cppstdin so those tests are skipped...)
Branch: perl
@@ -20789,28 +21038,34 @@ ____________________________________________________________________________
! win32/config_H.vc
____________________________________________________________________________
[ 14433] By: jhi on 2002/01/26 21:38:56
- Log: Integrate perlio;
-
- 1st two tests of File/Find/t/find.t and taint.t were run after
- calling cleanup(). If previous fail had left for_find directory,
- but no content in it then cleanup() returned cd'ed to that directory.
- So tests failed. Fixed cleanup()-s.
+ Log: Integrate perlio:
- If we get to sighandler by mistake (no perl handler set) then
- warn() and exit() rather than die() - should never happen
- but if it does context needed to die is likely to be trashed
- as well.
+ [ 14432]
+ Gurusamy Sarathy <gsar@ActiveState.com>'s patch to Filter::Simple
+ for CRLF line endings.
- Win32 signal emulation cleanup.
+ [ 14431]
+ Fix/band-aid for op.c's anon CV leak fix co-existing with threads.
+ Should really be looked at by someone that knows about pads.
+ [ 14429]
Tinkering with thread cleanup mutex-ing - not the problem
(op.c is) but could have been...
- Fix/band-aid for op.c's anon CV leak fix co-existing with threads.
- Should really be looked at by someone that knows about pads.
+ [ 14428]
+ Win32 signal emulation cleanup.
- Gurusamy Sarathy <gsar@ActiveState.com>'s patch to Filter::Simple
- for CRLF line endings.
+ [ 14427]
+ If we get to sighandler by mistake (no perl handler set) then
+ warn() and exit() rather than die() - should never happen
+ but if it does context needed to die is likely to be trashed
+ as well.
+
+ [ 14425]
+ 1st two tests of File/Find/t/find.t and taint.t were run after
+ calling cleanup(). If previous fail had left for_find directory,
+ but no content in it then cleanup() returned cd'ed to that directory.
+ So tests failed. Fixed cleanup()-s.
Branch: perl
!> ext/threads/threads.xs lib/File/Find/t/find.t
!> lib/File/Find/t/taint.t lib/Filter/Simple.pm mg.c op.c
@@ -20871,17 +21126,20 @@ ____________________________________________________________________________
! lib/File/Find/t/find.t lib/File/Find/t/taint.t
____________________________________________________________________________
[ 14424] By: jhi on 2002/01/25 22:10:11
- Log: Integrate perlio;
+ Log: Integrate perlio:
- Fix winsystem.t's attempt to build showav.exe to work
- with gcc (which writes a.exe unless told with -o ).
- Also put in a few more fail-safes to check .exe got
- built somehow.
+ [ 14422]
+ Save $! so that other syscalls don't disturb it before
+ we test it.
+ [ 14421]
More Win32 tuning
- Save $! so that other syscalls don't disturb it before
- we test it.
+ [ 14420]
+ Fix winsystem.t's attempt to build showav.exe to work
+ with gcc (which writes a.exe unless told with -o ).
+ Also put in a few more fail-safes to check .exe got
+ built somehow.
Branch: perl
!> ext/Socket/socketpair.t t/op/stat.t t/op/taint.t
!> t/op/winsystem.t
@@ -20933,49 +21191,66 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 14416] By: jhi on 2002/01/25 15:04:25
- Log: Integrate perlio; extensive threads and threads::shared work
- (note that the below is a chronological list of perlio
- check-in entries since the last integrate)
+ Log: Integrate perlio:
- Nearly-working threads re-structuring. Do not integrate,
- submit-ing to get to Win32, and as "off site" backup.
+ [ 14411]
+ Linux/NFS hackery was not faking right number of passes.
- threads work again on Win32. (Not threads::shared yet)
- Submit to see if they do on Linux.
+ [ 14410]
+ threads::shared tidy up:
+ - Add _id() function to shared.xs so we can test refs point at same thing.
+ - Use that rather that comparing stringified ref in shared/t/hv_refs.t
+ - Allow no_share to pass if sharing to works despite mis-ordering.
+ - Change docs of threads to document ->create() (as used in tests),
+ and not mention "new".
- Add new threads/typemap to MANIFEST
+ [ 14401]
+ Expand command line test globs on Win32.
- XS side of new threads::shared designed, coded and compiles,
- and mostly commented but is totaly untested.
- submit in case anyone wants a preview.
+ [ 14393]
+ Except Win32 from echo tests. (Alarm does not break into connect)
- Miss mg_len == 0 meaning don't Safefree
+ [ 14392]
+ SvTEMP_off to stop private PV's being stolen and stored in shared space
- Shared scalars working, some shared array ops working.
+ [ 14387]
+ thread::shared nearly working again - remaining issue
+ is references withing shared space.
+ Added bulk test with no threads involved (for debugging)
+ Tuned tests to skip those needing _thrcnt
+ [ 14378]
Implement recursive lock and use of scope for PL_sharedsv_space,
so now croak() from asserts does not leave locks.
Make hv_simple compile (new prototype for debugging probe).
- thread::shared nearly working again - remaining issue
- is references withing shared space.
- Added bulk test with no threads involved (for debugging)
- Tuned tests to skip those needing _thrcnt
+ [ 14377]
+ Shared scalars working, some shared array ops working.
- SvTEMP_off to stop private PV's being stolen and stored in shared space
+ [ 14373]
+ Miss mg_len == 0 meaning don't Safefree
- Except Win32 from echo tests. (Alarm does not break into connect)
+ [ 14372]
+ XS side of new threads::shared designed, coded and compiles,
+ and mostly commented but is totaly untested.
+ submit in case anyone wants a preview.
- Expand command line test globs on Win32.
+ [ 14363]
+ Add new threads/typemap to MANIFEST
- threads::shared tidy up:
- - Add _id() function to shared.xs so we can test refs point at same thing.
- - Use that rather that comparing stringified ref in shared/t/hv_refs.t
- - Allow no_share to pass if sharing to works despite mis-ordering.
- - Change docs of threads to document ->create() (as used in tests),
- and not mention "new".
+ [ 14357]
+ #14352 deleted ext/threads/threads.h
- Linux/NFS hackery was not faking right number of passes.
+ [ 14356]
+ Eradicate sharedsv.*
+
+ [ 14355]
+ threads work again on Win32. (Not threads::shared yet)
+ Submit to see if they do on Linux.
+
+ [ 14352]
+ Nearly-working threads re-structuring. Do not integrate,
+ submit-ing to get to Win32, and as "off site" backup.
Branch: perl
+> ext/threads/shared/t/0nothread.t ext/threads/shared/typemap
+> ext/threads/typemap
@@ -21548,7 +21823,21 @@ ____________________________________________________________________________
! ext/SDBM_File/sdbm.t
____________________________________________________________________________
[ 14346] By: jhi on 2002/01/19 17:55:55
- Log: Integrate perlio; Split out core of sv_magic() into sv_magicext().
+ Log: Integrate perlio:
+
+ [ 14335]
+ Split out core of sv_magic() into sv_magicext().
+ sv_magic provides the extra restictions (no READONLY, only
+ one of each type, canned set of vtables), and sv_magicext()
+ does the actual data twiddling.
+ Also enhances semantics of ->mg_ptr setting via name/namlen
+ to allow either an uncopied ptr (namlen == 0), or a Newz()ed
+ scratch area (namlen > 0 && name == NULL).
+ sv_magicext also returns the MAGIC * it added.
+ sv_magicext is intended mainly for PERL_MAGIC_ext (~) magic.
+ To come sv_unmagicext() - which will remove just one magic
+ of particular type, and additionaly match against ->mg_ptr,
+ or the MAGIC * (need to experiment as to which is more natural).
Branch: perl
!> embed.fnc embed.h embedvar.h global.sym perlapi.c perlapi.h
!> pod/perlapi.pod pod/perlintern.pod proto.h sv.c util.c
@@ -21934,7 +22223,10 @@ ____________________________________________________________________________
! lib/ExtUtils/MM_Unix.pm
____________________________________________________________________________
[ 14297] By: jhi on 2002/01/16 13:21:26
- Log: Integrate perlio; offsetof() is in <stddef.h>
+ Log: Integrate perlio:
+
+ [ 14296]
+ offsetof() is in <stddef.h>
Branch: perl
!> ext/Socket/Socket.xs
____________________________________________________________________________
@@ -22074,30 +22366,41 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 14284] By: jhi on 2002/01/15 15:55:53
- Log: Integrate perlio;
+ Log: Integrate perlio:
- (reintroduce #14251) Slab allocator for ops
- - moved the statics to intrpvar.h
- - implemented Slab_Free()
- - uses PerlMemShared (for now) if distinction exists.
-
- Slab allocator submit after resolve -ay to keep it!
+ [ 14281]
+ Correct slab allocator for case where sizeof(IV) > sizeof(IV *)
+ e.g. -Duse64bitint on a 32-bit platform.
+ Now uses I32 for use-count and is more careful with its casts.
- Hand merge of non slab allocator stuff
+ [ 14277]
+ Correct name of PL_OP_SLAB_ALLOC
- const-ness fix in savepv's passing of NULL
+ [ 14271]
+ Regen embed enable slab for PERL_IMPLICIT_SYS
+ [ 14269]
Typo in #else branch of PL_SLAB_ALLOC
- Integrate rest of mainline
+ [ 14268]
+ const-ness fix in savepv's passing of NULL
- Regen embed enable slab for PERL_IMPLICIT_SYS
+ [ 14267]
+ Hand merge of non slab allocator stuff
- Correct name of PL_OP_SLAB_ALLOC
+ [ 14259]
+ Use PerlMemShared for CopSTASHPV and CopFILE. MUCH harder than it sounds!
+ Need to use CopXXXXX macros everywhere and add CopSTASH_free
+ Add new scope type and add support for it to scope.c and scope stack
+ dup-er in sv.c. Add savesharedpv().
+ Also zealous version of Win32's vmem.h to catch all the abuses.
+ With this t/op/fork.t passes even with zealous checking and
+ checker is point a finger at various threads/shared issues.
+ PL_curcop->cop_io is still an issue.
- Correct slab allocator for case where sizeof(IV) > sizeof(IV *)
- e.g. -Duse64bitint on a 32-bit platform.
- Now uses I32 for use-count and is more careful with its casts.
+ [ 14257]
+ Inverted sense of special-ness of specialCopIO - supposed to
+ be true if value is "special" i.e. NOT an SV.
Branch: perl
!> (integrate 28 files)
____________________________________________________________________________
@@ -22444,8 +22747,9 @@ ____________________________________________________________________________
! lib/ExtUtils/t/MM_Win32.t
____________________________________________________________________________
[ 14251] By: jhi on 2002/01/13 23:30:05
- Log: Integrate perlio.
+ Log: Integrate perlio:
+ [ 14250]
Slab allocator for ops
- moved the statics to intrpvar.h
- implemented Slab_Free()
@@ -22579,8 +22883,9 @@ ____________________________________________________________________________
! pod/perltodo.pod utils/perldoc.PL
____________________________________________________________________________
[ 14235] By: jhi on 2002/01/13 16:45:52
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 14232]
Win32 fixes:
- vmem.h hack to handle free-by-wrong-thread after eval "".
- Initialize timerid
@@ -22687,14 +22992,16 @@ ____________________________________________________________________________
! pp_hot.c regcomp.c regexec.c
____________________________________________________________________________
[ 14218] By: jhi on 2002/01/12 16:14:52
- Log: Integrate perlio;
-
- Abstract out the cloning of SvPVX and handle shared pv in a
- safe (if suboptimal) manner. Does not fix op/fork.t :-(
+ Log: Integrate perlio:
+ [ 14214]
Win32-ize socketpair test
- Win32 can fork even though $Config{d_fork} is undef
- SOCK_DGRAM does not work - skip those tests.
+
+ [ 14213]
+ Abstract out the cloning of SvPVX and handle shared pv in a
+ safe (if suboptimal) manner. Does not fix op/fork.t :-(
Branch: perl
!> ext/Socket/socketpair.t sv.c
____________________________________________________________________________
@@ -22838,8 +23145,13 @@ ____________________________________________________________________________
! MANIFEST t/run/kill_perl.t
____________________________________________________________________________
[ 14197] By: jhi on 2002/01/11 21:48:49
- Log: Integrate perlio;
+ Log: Integrate perlio:
+
+ [ 14196]
Install dummy signal() handlers for Win32's SIGINT and SIGBREAK
+ as C runtime seems to get its hands on them even though we said
+ they were handled.
+ Still an issue with "die" out of signal handler - get panic: pp_iter
Branch: perl
!> win32/win32.c
____________________________________________________________________________
@@ -22852,7 +23164,9 @@ ____________________________________________________________________________
! win32/win32.c
____________________________________________________________________________
[ 14195] By: jhi on 2002/01/11 20:07:35
- Log: Integrate perlio;
+ Log: Integrate perlio:
+
+ [ 14192]
A mostly-stable version of "new" Win32 signal/kill support.
Branch: perl
!> MANIFEST XSUB.h mg.c t/run/kill_perl.t toke.c win32/config.bc
@@ -23086,7 +23400,10 @@ ____________________________________________________________________________
! lib/I18N/Collate.pm pod/perlfunc.pod
____________________________________________________________________________
[ 14170] By: jhi on 2002/01/10 17:48:42
- Log: Integrate perlio; More signal hackery.
+ Log: Integrate perlio:
+
+ [ 14167]
+ More signal hackery
Branch: perl
!> win32/win32.c
____________________________________________________________________________
@@ -23136,7 +23453,10 @@ ____________________________________________________________________________
! hints/linux.sh
____________________________________________________________________________
[ 14163] By: jhi on 2002/01/10 14:52:08
- Log: Integrate perlio; Skeleton coding of more kill() support on Win32.
+ Log: Integrate perlio:
+
+ [ 14160]
+ Skeleton coding of more kill() support on Win32.
Branch: perl
!> win32/win32.c
____________________________________________________________________________
@@ -23198,7 +23518,10 @@ ____________________________________________________________________________
! ext/Unicode/Normalize/mkheader
____________________________________________________________________________
[ 14155] By: jhi on 2002/01/09 19:09:15
- Log: Integrate perlio; (Re-)implement alarm() for Win32.
+ Log: Integrate perlio:
+
+ [ 14151]
+ (Re-)implement alarm() for Win32.
Branch: perl
!> win32/config.vc win32/config_H.vc win32/win32.c win32/win32.h
!> win32/win32iop.h
@@ -23647,7 +23970,10 @@ ____________________________________________________________________________
! regcomp.h regexec.c
____________________________________________________________________________
[ 14089] By: jhi on 2002/01/05 15:42:12
- Log: Integrate perlio; a missing aTHX.
+ Log: Integrate perlio:
+
+ [ 14088]
+ One missing aTHX_
Branch: perl
!> op.c
____________________________________________________________________________
@@ -24056,7 +24382,10 @@ ____________________________________________________________________________
! MANIFEST Makefile.SH embed.pl pod/perlapi.pod
____________________________________________________________________________
[ 14028] By: jhi on 2002/01/02 23:29:03
- Log: Integrate perlio; more PPPort Makefile source dependence removal
+ Log: Integrate perlio:
+
+ [ 14022]
+ More PPPort Makefile source dependence removal
Branch: perl
!> ext/Devel/PPPort/Makefile.PL perl.h
____________________________________________________________________________
@@ -24119,7 +24448,10 @@ ____________________________________________________________________________
! op.c
____________________________________________________________________________
[ 14019] By: jhi on 2002/01/02 16:51:38
- Log: Integrate perlio; avoid uninit debug_pad.
+ Log: Integrate perlio:
+
+ [ 14017]
+ Avoid un-init perl_debug_pad in clones
Branch: perl
!> sv.c
____________________________________________________________________________
@@ -24215,7 +24547,10 @@ ____________________________________________________________________________
! regcomp.c regexec.c
____________________________________________________________________________
[ 14003] By: jhi on 2002/01/01 18:04:02
- Log: Integrate perlio; experimental binmode() re-coding.
+ Log: Integrate perlio:
+
+ [ 13991]
+ Experimental binmode() re-coding (UNIX okay - but it would be...)
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -24377,8 +24712,11 @@ ____________________________________________________________________________
! lib/User/grent.t
____________________________________________________________________________
[ 13978] By: jhi on 2001/12/31 14:17:55
- Log: Integrate perlio; cleanup, in particular avoid accidental
- PerlIO_flush(NULL) if PerlIONext is NULL.
+ Log: Integrate perlio:
+
+ [ 13975]
+ perlio.c cleanup - in particular avoid accidental PerlIO_flush(NULL)
+ if PerlIONext is NULL.
Branch: perl
!> ext/Devel/PPPort/MANIFEST perlio.c perliol.h
____________________________________________________________________________
@@ -24485,14 +24823,14 @@ ____________________________________________________________________________
!> ext/Devel/PPPort/Makefile.PL
____________________________________________________________________________
[ 13961] By: jhi on 2001/12/30 17:35:45
- Log: Integrate perlio; more win32 stuff:
+ Log: Integrate perlio:
+ [ 13959]
+ Win32 stuff:
A. Use Perl_my_socketpair()
- B. Use PerlSock_xxxx() rather than raw xxxx() so we get to
- load winsock.
- C. (In passing) work round fact that $$ is now SvREADONLY
- so we need to take special measures to set it during
- pseudo-fork.
+ B. Use PerlSock_xxxx() rather than raw xxxx() so we get to load winsock.
+ C. (In passing) work round fact that $$ is now SvREADONLY so we need to
+ take special measures to set it during pseudo-fork.
Branch: perl
!> util.c win32/perlhost.h
____________________________________________________________________________
@@ -24513,7 +24851,20 @@ ____________________________________________________________________________
! util.c win32/perlhost.h
____________________________________________________________________________
[ 13958] By: jhi on 2001/12/30 16:33:58
- Log: Integrate perlio; win32 kicking.
+ Log: Integrate perlio:
+
+ [ 13950]
+ Win32 hides some errno-oid constants in <winsock.h> under assumed names.
+ This gets them into Errno.pm - yet to prove they end up in $!.
+
+ [ 13948]
+ remove embed.pl duplicates
+
+ [ 13944]
+ "Port" Devel::PPPort to Win32:
+ - need to set @INC before use in the test
+ - {} are special to dmake, so use ppport.h.PL
+ rather than commandline
Branch: perl
+> ext/Devel/PPPort/ppport.h.PL
!> embed.h embed.pl ext/Devel/PPPort/Makefile.PL
@@ -24630,7 +24981,10 @@ ____________________________________________________________________________
! ext/DB_File/t/db-recno.t
____________________________________________________________________________
[ 13941] By: jhi on 2001/12/29 20:25:22
- Log: Integrate perlio; regen'ed config_H.?c
+ Log: Integrate perlio:
+
+ [ 13936]
+ Routine regen_config_h - no real differences other than order of crypt
Branch: perl
!> win32/config_H.bc win32/config_H.gc win32/config_H.vc
____________________________________________________________________________
@@ -24683,11 +25037,14 @@ ____________________________________________________________________________
! win32/config_H.bc win32/config_H.gc win32/config_H.vc
____________________________________________________________________________
[ 13935] By: jhi on 2001/12/29 17:36:08
- Log: Integrate perlio;
-
- Define the two socket error numbers in terms of WSAEXXXXX equivalents
+ Log: Integrate perlio:
+ [ 13934]
Fudge Config.pm so File::Spec does not croak.
+
+ [ 13931]
+ Define the two socket error numbers in terms of WSAEXXXXX equivalents
+ (just to get util.c to compile)
Branch: perl
!> win32/FindExt.pm win32/win32.h
____________________________________________________________________________
@@ -24744,12 +25101,14 @@ ____________________________________________________________________________
+ lib/Pod/t/InputObjects.t
____________________________________________________________________________
[ 13927] By: jhi on 2001/12/29 15:27:39
- Log: Integrate perlio;
+ Log: Integrate perlio:
+ [ 13926]
+ Nick Clark's embed.pl fix for my_socketpair
+
+ [ 13923]
Quick fix (after couple of clever fixes failed) for
"accept leaks memory" fail [ID 20011223.001]
-
- Nick Clark's embed.pl fix for my_socketpair
Branch: perl
!> embed.h embed.pl global.sym pod/perlapi.pod pp_sys.c proto.h
____________________________________________________________________________
@@ -25197,14 +25556,17 @@ ____________________________________________________________________________
! perl.h
____________________________________________________________________________
[ 13862] By: jhi on 2001/12/23 01:47:23
- Log: Integrate perlio;
+ Log: Integrate perlio:
- Add at least the "important" PerlIO_xxxx functions to embed.pl
- so that they get implicit pTHX_ and we can avoid slow dTHX.
+ [ 13854]
+ Win32 and makedef.pl fall-out of PerlIO/pTHX stuff
+ [ 13853]
Put PerlIO stuff inside EXTERN C
- Win32 and makedef.pl fall-out of PerlIO/pTHX stuff
+ [ 13852]
+ Add at least the "important" PerlIO_xxxx functions to embed.pl
+ so that they get implicit pTHX_ and we can avoid slow dTHX.
Branch: perl
!> embed.h embed.pl ext/IO/IO.xs global.sym globals.c makedef.pl
!> perlio.c perlio.h perlio.sym pod/perlapi.pod proto.h
@@ -25284,10 +25646,18 @@ ____________________________________________________________________________
! Configure
____________________________________________________________________________
[ 13849] By: jhi on 2001/12/22 16:40:24
- Log: Integrate perlio;
- Fix mis-parse of autoloaded usage code by declaring the sub
- Correct checking code which Ilya spotted was tripped by CR at EOF.
+ Log: Integrate perlio:
+
+ [ 13848]
The CR at EOF fix earlier broke CR at end-of-buffer.
+ This should be okay for both?
+
+ [ 13847]
+ Correct checking code which Ilya spotted was tripped by CR at EOF.
+ Also tone down perl -DP tracing of sv_gets.
+
+ [ 13846]
+ Fix mis-parse of autoloaded usage code by declaring the sub
Branch: perl
! regexec.c
!> ext/POSIX/POSIX.pm perlio.c sv.c
@@ -25491,7 +25861,10 @@ ____________________________________________________________________________
! lib/Carp/Heavy.pm
____________________________________________________________________________
[ 13819] By: jhi on 2001/12/20 14:56:30
- Log: Integrate perlio (pTHX_ fixes for :win32 layer)
+ Log: Integrate perlio:
+
+ [ 13815]
+ pTHX_ fixes for :win32 layer
Branch: perl
!> win32/win32io.c
____________________________________________________________________________
@@ -25566,7 +25939,25 @@ ____________________________________________________________________________
! pod/perlre.pod
____________________________________________________________________________
[ 13809] By: jhi on 2001/12/19 16:47:11
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 13808]
+ Add pTHX to all vtable functions for future-proofing and
+ consistency of PerlIO layers.
+
+ [ 13797]
+ Remove the sometimes-lvalue cast
+
+ [ 13796]
+ alarm.t with -Uuseperlio fix
+ - SA_RESTART should only be function of PERL_OLD_SIGNALS
+ not USE_PERLIO
+
+ [ 13795]
+ Fix READONLY hashes:
+ 1. Discovered need for disabled scope.c part of Jeff's patch.
+ 2. Corrected hv_delete* - entry was being de-linked from
+ chain (patch program not smart enough?)
Branch: perl
!> ext/Encode/Encode.xs ext/PerlIO/Scalar/Scalar.xs
!> ext/PerlIO/Via/Via.xs perlio.c perliol.h
@@ -25889,8 +26280,12 @@ ____________________________________________________________________________
! hints/vos.sh
____________________________________________________________________________
[ 13761] By: jhi on 2001/12/18 15:57:39
- Log: Integrate perlio;
+ Log: Integrate perlio:
+
+ [ 13760]
Tidied version of Jeffrey Friedl's <jfriedl@yahoo.com> restricted hashes
+ - added delete of READONLY value inhibit & test for same
+ - re-tabbed
Branch: perl
!> ext/Devel/Peek/Peek.t hv.c hv.h scope.c sv.c t/lib/access.t
____________________________________________________________________________
@@ -26172,7 +26567,12 @@ ____________________________________________________________________________
! pod/perluniintro.pod
____________________________________________________________________________
[ 13725] By: jhi on 2001/12/17 16:43:09
- Log: Integrate perlio; interruptable system().
+ Log: Integrate perlio:
+
+ [ 13724]
+ Fix for alarm() breaking into wait*().
+ Call PERL_ASYNC_CHECK() on EINTR in Perl_wait4pid(), to dispatch
+ signal handler before caller re-does the system call.
Branch: perl
!> util.c
____________________________________________________________________________
@@ -27531,7 +27931,13 @@ ____________________________________________________________________________
! lib/vmsish.t t/io/pipe.t t/op/exec.t t/test.pl vms/test.com
____________________________________________________________________________
[ 13534] By: jhi on 2001/12/08 15:16:14
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 13531]
+ Tweak multi-arg open error messages
+
+ [ 13530]
+ Allow multi-arg open() if opening layer declares this legal.
Branch: perl
!> doio.c lib/Exporter/Heavy.pm lib/open.t op.c perlio.c
!> perliol.h pod/perlfunc.pod pod/perltoc.pod pp.c
@@ -28335,11 +28741,11 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 13418] By: jhi on 2001/12/01 20:40:03
- Log: Integrate perlio;
+ Log: Integrate perlio:
- Skip socket-ness tests on handles (e.g. PerlIO::Scalar)
- which do not have file descriptors. Noticed a possibly
- worse problem in the process ...
+ [ 13409]
+ Skip socket-ness tests on handles (e.g. PerlIO::Scalar) which do not
+ have file descriptors. Noticed a possibly worse problem in the process ...
Branch: perl
!> doio.c
____________________________________________________________________________
@@ -30264,8 +30670,12 @@ ____________________________________________________________________________
! wince/config.ce
____________________________________________________________________________
[ 13140] By: jhi on 2001/11/20 20:17:13
- Log: Integrate perlio; add detection and use of /proc/self/exe
- (Linuxism for finding the absolute path of the executable)
+ Log: Integrate perlio:
+
+ [ 13138]
+ perl.c change to use HAS_PROCSELFEXE, also
+ tweak to $^X test to comprehend full path to real executable
+ being returned (like Cygwin as it happens...)
Branch: perl
!> Configure config_h.SH perl.c t/op/magic.t
____________________________________________________________________________
@@ -30637,7 +31047,16 @@ ____________________________________________________________________________
! pod/perlfaq4.pod
____________________________________________________________________________
[ 13083] By: jhi on 2001/11/18 21:37:06
- Log: Integrate perlio; win32 sync.
+ Log: Integrate perlio:
+
+ [ 13081]
+ Win32 layer has a dup which needs to match new prototype.
+
+ [ 13080]
+ Wrong way to get stdio mode used.
+
+ [ 13072]
+ Allow dup'ing of PerlIO::Scalar etc.
Branch: perl
!> perlio.c win32/win32io.c
____________________________________________________________________________
@@ -30721,7 +31140,22 @@ ____________________________________________________________________________
! lib/utf8.pm
____________________________________________________________________________
[ 13069] By: jhi on 2001/11/18 14:05:23
- Log: Integrate perlio; force the inclusion of the PL_runops_*
+ Log: Integrate perlio:
+
+ [ 13068]
+ embed.pl generated changes I forgot to include
+
+ [ 13067]
+ Force inclusion of both Perl_runops_* in perl itself,
+ so they are available for Peek.xs etc.
+
+ [ 12874]
+ Keep It Simple and Stupid version of readonly hash support.
+ - Test for SvREAONLY(hv) at a few spots in hv.c
+ - add the error message to perldiag.pod
+ - (dubious) add access::readonly() to univeral.c
+ - add test using above
+ - fixup ext/B/t/stash.t to account for access:: existing
Branch: perl
!> embedvar.h hv.c perlapi.h perlvars.h pod/perlapi.pod
____________________________________________________________________________
@@ -32600,7 +33034,18 @@ ____________________________________________________________________________
! lib/ExtUtils/MakeMaker.pm
____________________________________________________________________________
[ 12832] By: jhi on 2001/11/03 15:43:03
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 12830]
+ Fix clone_leak problem.
+ PerlIOStdio_dup was leaking FILE * as it was still doing fdopen()
+ as vestige of calling PerlLIO_dup().
+
+ [ 12829]
+ Tweaks attempting to locate Doug's clone_leak leak.
+ - add some PerlIO_debug()
+ - handle PerlIO_clone() with empty lists (clone before Perl_parse())
+ - Even if it closing stdout etc. do a fflush()
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -33229,7 +33674,13 @@ ____________________________________________________________________________
! MANIFEST Todo-5.6 pod/perltodo.pod win32/win32.c
____________________________________________________________________________
[ 12746] By: jhi on 2001/10/28 16:34:35
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 12745]
+ Mingw32 fixup for Embed.t
+
+ [ 12744]
+ GCC vs MS 64-bit constant syntax
Branch: perl
!> ext/Time/HiRes/HiRes.xs lib/ExtUtils/Embed.t
____________________________________________________________________________
@@ -33269,7 +33720,15 @@ ____________________________________________________________________________
! lib/ExtUtils/Embed.t
____________________________________________________________________________
[ 12738] By: jhi on 2001/10/28 14:03:58
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 12737]
+ Tweak for build with Mingw32 - __attribute__((unused)) is not liked
+ by gcc -xc++.
+
+ [ 12736]
+ Have :stdio layer update an honour the fd refcnt table.
+ Embed.t now passes with PERLIO=stdio as well (tested under ithreads)
Branch: perl
!> perlio.c win32/win32.h
____________________________________________________________________________
@@ -33292,7 +33751,62 @@ ____________________________________________________________________________
!> win32/win32.c
____________________________________________________________________________
[ 12734] By: jhi on 2001/10/28 13:31:54
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 12733]
+ Use fd refcounts to solve the problem highlighted by new Embed.t, at
+ least for PERLIO=perlio unthreaded case
+
+ [ 12732]
+ Typo in exe name
+
+ [ 12730]
+ Fixup Embed.t for Win32/VC++
+
+ [ 12729]
+ Adapt testcase from Doug Maceachern <dougm@covalent.net> for perlio_destruct
+ bug as lib/ExtUtils/Embed.t which tests that and some aspects of
+ ExtUtils::Embed.
+
+ [ 12711]
+ Use ref count scheme rather than PerlLIO_dup() to do fp_dup().
+ Restores op/fork.t on Win32 (still segfault on exit of ok 2).
+
+ [ 12557]
+ All tests pass (legitimately) on ithreads
+
+ [ 12555]
+ Restore non-ithreads build. Interestingly binmode test passes
+ non-ithreads - so crlf layer is not damaged and ithreads fail
+ is a symptom ...
+
+ [ 12552]
+ Win32 PerlIO_cleanup special cases should no longer be required.
+
+ [ 12551]
+ Multiple win32io.o is fatal for GCC (and noise with VC++)
+
+ [ 12547]
+ Convert rest of PerlIO's memory tables to per-interp and add clone functions
+ for them. Call explicit cleanup during destruct process.
+ - one binmode test is failing
+ - also ext/threads/t/basic.t fails under make test, and is noisy under
+ harness. (Threads results are intermingled and don't match order expected.)
+
+ [ 12544]
+ PerlIO layer table as PL_perlio (per-interpreter)
+
+ [ 12541]
+ Fix typos in new locking on MemShared
+ Make buffers in PerlIOBuf_* in per-thread heap (they are cloned after all...)
+ - seems to make segfaults more deterministic - suspect they are
+ attempt to free() after Interp and Host have gone.
+
+ [ 12540]
+ Remove the MemShared re-#define (again)
+
+ [ 12539]
+ Use locks on MemShared
Branch: perl
+> lib/ExtUtils/Embed.t
!> MANIFEST perlio.c
@@ -34635,8 +35149,11 @@ ____________________________________________________________________________
! pod/pod2man.PL pod/pod2text.PL
____________________________________________________________________________
[ 12534] By: jhi on 2001/10/20 15:14:25
- Log: Integrate perlio change #12532:
- introduce and use PerlIO_intmod2str().
+ Log: Integrate perlio:
+
+ [ 12532]
+ Extract doio.c's open(2) mode to string conversion as PerlIO_intmod2str()
+ Use for non-PERLIO fdupopen().
Branch: perl
!> doio.c lib/Net/Domain.pm perlio.c perlio.h
____________________________________________________________________________
@@ -34652,7 +35169,34 @@ ____________________________________________________________________________
! doio.c lib/Net/Domain.pm perlio.c perlio.h
____________________________________________________________________________
[ 12531] By: jhi on 2001/10/20 14:05:47
- Log: Integrate perlio: PerlIO win32 fixes.
+ Log: Integrate perlio:
+
+ [ 12530]
+ Fixed in two places - p4 resolve
+
+ [ 12529]
+ Fix for ithreads/stdio build
+
+ [ 12525]
+ Avoid calling (now non-existant) Perl_sv_setsv(), by calling
+ Perl_sv_setsv_flags directly.
+
+ [ 12524]
+ Add a new flag character 'm' to embed.pl set to represent
+ "functions" which are really macros. Use it foe the troublesome
+ sv_setsv() etc. macros in sv.h - changing latter to define
+ sv_setsv rather than sv_setsv_macro etc.
+
+ [ 12523]
+ Add comments explaining why win32.h/embed.h are included where they are
+ in perl.h
+
+ [ 12522]
+ Code PerlIOWin32_dup - does not fix Win32 problems as :win32 is not
+ being used yet.
+
+ [ 12511]
+ Fix gross win32 build issues
Branch: perl
!> embed.h embed.pl embedvar.h ext/threads/threads.xs global.sym
!> perl.h perlapi.c perlapi.h perlio.c perlsdio.h pod/perlapi.pod
@@ -35154,7 +35698,32 @@ ____________________________________________________________________________
! pod/perldata.pod pod/perlop.pod
____________________________________________________________________________
[ 12463] By: jhi on 2001/10/16 19:39:25
- Log: Integrate perlio: PerlIO_dup (for all but Win32).
+ Log: Integrate perlio:
+
+ [ 12462]
+ PerlIOXxxx_dups for all but Win32
+
+ [ 12461]
+ Implement PerlIOStdio_dup (explains core dumps - dup
+ was not setting up a FILE * to be fclosed()).
+
+ [ 12460]
+ When USE_ITHREADS avoid SV * in PerlIO_debug, at risk of buffer
+ overflow.
+
+ [ 12456]
+ Builds under ithreads (but fails all threads tests)
+
+ [ 12451]
+ Skeleton of "PerlIO_dup" coded.
+ Still-passes all tests non-threaded (well it would wouldn't it!)
+
+ [ 12447]
+ Beginings of PerlIO_dup support (unstable)
+
+ [ 11615]
+ Avoid testing for (non-)existance of "encoding(xxxx)"
+ layer is called "encoding" the (xxxx) is an argument.
Branch: perl
!> embed.h embed.pl ext/Encode/Encode.xs
!> ext/PerlIO/Scalar/Scalar.xs ext/PerlIO/Via/Via.xs hv.c perl.h
@@ -43443,7 +44012,11 @@ ____________________________________________________________________________
! makedef.pl
____________________________________________________________________________
[ 11349] By: jhi on 2001/07/13 11:54:10
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 11346]
+ Win32/distclean.bat - Down-case all MANIFEST and File::Find results so
+ to avoid /unicode vs /Unicode issues.
Branch: perl
!> win32/distclean.bat
____________________________________________________________________________
@@ -43780,7 +44353,13 @@ ____________________________________________________________________________
! hints/aix.sh
____________________________________________________________________________
[ 11300] By: jhi on 2001/07/12 12:35:44
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 11296]
+ Exclude reentrant_buffer from .def file
+
+ [ 11295]
+ Honour void-ness of my_exit()
Branch: perl
!> makedef.pl win32/win32.c
____________________________________________________________________________
@@ -44115,7 +44694,14 @@ ____________________________________________________________________________
! MANIFEST lib/Term/ANSIColor.pm lib/Term/ANSIColor/test.pl
____________________________________________________________________________
[ 11253] By: jhi on 2001/07/10 12:59:27
- Log: Integrate perlio (the right fix for the ":layer(args)")
+ Log: Integrate perlio:
+
+ [ 11252]
+ Fix open(...,"...:layer(xxx)",...)
+ - use memEQ not strEQ as there is '(' not '\0'
+
+ [ 11063]
+ Quick for for #ifdef mess
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -45519,7 +46105,10 @@ ____________________________________________________________________________
! pp_sys.c
____________________________________________________________________________
[ 11053] By: jhi on 2001/06/30 21:13:55
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 11050]
+ Jeffrey Friedl's <jfriedl@yahoo.com> fix for lib/File/Find/taint.t
Branch: perl
!> lib/File/Find/taint.t
____________________________________________________________________________
@@ -46972,7 +47561,16 @@ ____________________________________________________________________________
! lib/File/Find/taint.t
____________________________________________________________________________
[ 10844] By: jhi on 2001/06/22 21:32:58
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10843]
+ Back out debug in taint.t
+
+ [ 10841]
+ Skip cwd test on Win32 ???
+
+ [ 10836]
+ Skip |- based op/write.t on Win32 as well as VMS
Branch: perl
!> lib/File/Find/taint.t t/op/write.t
____________________________________________________________________________
@@ -47019,7 +47617,10 @@ ____________________________________________________________________________
! t/op/write.t
____________________________________________________________________________
[ 10835] By: jhi on 2001/06/22 20:44:20
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10833]
+ Patcho fix.
Branch: perl
!> util.c
____________________________________________________________________________
@@ -47659,7 +48260,10 @@ ____________________________________________________________________________
! pod/perldiag.pod proto.h util.c
____________________________________________________________________________
[ 10749] By: jhi on 2001/06/20 13:07:49
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10747]
+ Fix PERLIO=unix bug, while restoring maximal buffer in PerlIOBuf_unread.
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -47817,7 +48421,10 @@ ____________________________________________________________________________
! t/lib/warnings/pp
____________________________________________________________________________
[ 10729] By: jhi on 2001/06/19 18:34:10
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10728]
+ Hack File/Find/find.t to use File::Spec::Unix on Win32.
Branch: perl
!> lib/File/Find/find.t win32/distclean.bat
____________________________________________________________________________
@@ -47970,7 +48577,13 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 10710] By: jhi on 2001/06/19 10:18:41
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10708]
+ Get Win32 known_extensions and extensions right in config.sh and hence Config.pm
+
+ [ 10678]
+ Integrate mainline (part2 - the deletes)
Branch: perl
!> win32/config_sh.PL
____________________________________________________________________________
@@ -48604,7 +49217,17 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 10641] By: jhi on 2001/06/16 18:52:26
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10640]
+ Disable :win32 layer as default till I get it working
+
+ [ 10632]
+ Work-in-progress win32 layer semi-functional, checking
+ for UNIX breakage.
+
+ [ 10627]
+ Work in progress UNIX-side edit of win32 PerLIO layer
Branch: perl
+> win32/win32io.c
!> MANIFEST perlio.c perliol.h win32/makefile.mk
@@ -48751,7 +49374,14 @@ ____________________________________________________________________________
! lib/File/Spec/VMS.pm t/lib/extutils.t
____________________________________________________________________________
[ 10620] By: jhi on 2001/06/16 13:25:06
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10619]
+ Generated files
+
+ [ 10618]
+ Fix open.pm to work via XS-implemented method calls rather
+ than *open::layers variables which caused all the HV/AV hassle.
Branch: perl
!> embed.h embed.pl lib/open.pm perl.c perlio.c proto.h
!> t/io/utf8.t t/lib/io_scalar.t
@@ -48769,7 +49399,10 @@ ____________________________________________________________________________
! t/lib/io_scalar.t
____________________________________________________________________________
[ 10617] By: jhi on 2001/06/15 18:50:53
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10616]
+ pTHX_ / aTHX_ for ExtUtils/Constant.pm
Branch: perl
!> lib/ExtUtils/Constant.pm
____________________________________________________________________________
@@ -48779,7 +49412,10 @@ ____________________________________________________________________________
! lib/ExtUtils/Constant.pm
____________________________________________________________________________
[ 10615] By: jhi on 2001/06/15 18:36:43
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10614]
+ MULTIPLICITY fix for Socket.xs
Branch: perl
!> ext/Socket/Socket.xs
____________________________________________________________________________
@@ -48817,7 +49453,10 @@ ____________________________________________________________________________
! t/lib/filefind.t
____________________________________________________________________________
[ 10609] By: jhi on 2001/06/15 14:13:29
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10606]
+ regen_config_h for Win32.
Branch: perl
!> win32/config_H.bc win32/config_H.gc win32/config_H.vc
____________________________________________________________________________
@@ -48900,7 +49539,19 @@ ____________________________________________________________________________
! t/lib/gdbm.t
____________________________________________________________________________
[ 10598] By: jhi on 2001/06/15 13:13:13
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10597]
+ Check that HVs with HvNAME() != NULL are really stashes before
+ treating them as such. Also be more defensive on the GvCV.
+ Win32 fork and dprof now working again.
+
+ [ 10595]
+ Skip Perl_my_bcopy in .def file as we do not provide it.
+ - Win32 (VC++) now builds but fails:
+ filefind.t - suspect Win32's builtin cwd is not doing insecure dir test
+ fork.t - No &___ENV_HV_NAME___::CLONE method ???
+ write.t - open(...,"|-") not implemented on Win32
Branch: perl
!> makedef.pl sv.c
____________________________________________________________________________
@@ -48933,7 +49584,10 @@ ____________________________________________________________________________
! makedef.pl
____________________________________________________________________________
[ 10594] By: jhi on 2001/06/15 00:17:16
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10591]
+ Steps along the road toward Win32 building again.
Branch: perl
!> perlio.c win32/makefile.mk
____________________________________________________________________________
@@ -49010,7 +49664,10 @@ ____________________________________________________________________________
! perlio.c win32/makefile.mk
____________________________________________________________________________
[ 10590] By: jhi on 2001/06/14 16:11:11
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10589]
+ Routine regen_config_h for Win32
Branch: perl
!> win32/config_H.bc win32/config_H.gc win32/config_H.vc
____________________________________________________________________________
@@ -49020,7 +49677,15 @@ ____________________________________________________________________________
! win32/config_H.bc win32/config_H.gc win32/config_H.vc
____________________________________________________________________________
[ 10588] By: jhi on 2001/06/14 12:30:46
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10586]
+ Add new step to run_byacc which:
+ A. Corrects #line NNN "perly.c" lines so warnings etc. are trackable
+ B. Adds extra () to the two if (var = ...) constructs gcc -Wall winges about.
+
+ [ 10584]
+ Hack to remove insecure directories from PATH so test will run.
Branch: perl
+> perlyline.pl
!> MANIFEST Makefile.SH perly.c t/lib/filefind.t
@@ -49152,7 +49817,11 @@ ____________________________________________________________________________
! pod/perlfaq6.pod
____________________________________________________________________________
[ 10567] By: jhi on 2001/06/13 16:20:23
- Log: Integrate perlio; conflicts, accept Nick's versions.
+ Log: Integrate perlio:
+
+ [ 10564]
+ Avoid AV and HV in perlio.c by inventing PerlIO_list_t which is AV-ish
+ and using that instead (name lookups are sequential search for now).
Branch: perl
!> ext/Encode/Encode.xs ext/PerlIO/Scalar/Scalar.xs
!> ext/PerlIO/Via/Via.xs perlio.c perlio.h perliol.h
@@ -49591,7 +50260,10 @@ ____________________________________________________________________________
! lib/ExtUtils/Constant.pm t/lib/extutils.t
____________________________________________________________________________
[ 10506] By: jhi on 2001/06/10 20:57:20
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10504]
+ Fix (valid) -Wall warnings in perlio.c
Branch: perl
!> iperlsys.h
____________________________________________________________________________
@@ -49629,7 +50301,10 @@ ____________________________________________________________________________
! perly.c perly.h perly.y vms/perly_c.vms vms/perly_h.vms
____________________________________________________________________________
[ 10500] By: jhi on 2001/06/10 16:07:28
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10497]
+ Paper over a crack or two with USE_SFIO
Branch: perl
!> perlio.c perlsfio.h
____________________________________________________________________________
@@ -49693,7 +50368,10 @@ ____________________________________________________________________________
! Configure
____________________________________________________________________________
[ 10491] By: jhi on 2001/06/10 01:15:40
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10489]
+ Make XS/Typemap compile (but fail) with sfio
Branch: perl
!> perlsfio.h
____________________________________________________________________________
@@ -49851,7 +50529,12 @@ ____________________________________________________________________________
! pod/perlguts.pod
____________________________________________________________________________
[ 10467] By: jhi on 2001/06/07 12:04:26
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10466]
+ MULTIPLICITY fix for S_grok_number(), also a few gratuitious trailing
+ whitespace tweaks.
+ Still coredumps in pragma/overload.t - what a nice hard fail that is...
Branch: perl
!> sv.c
____________________________________________________________________________
@@ -50456,7 +51139,10 @@ ____________________________________________________________________________
! Configure
____________________________________________________________________________
[ 10389] By: jhi on 2001/06/02 13:14:57
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10387]
+ Tweak util.c's atof2 for MULTIPLICITY
Branch: perl
!> pod/perlapi.pod util.c
____________________________________________________________________________
@@ -50640,7 +51326,13 @@ ____________________________________________________________________________
! t/lib/filecomp.t
____________________________________________________________________________
[ 10365] By: jhi on 2001/06/01 12:13:26
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10364]
+ Cleanup dll.base and dll.exp created by GCC builds.
+
+ [ 10363]
+ Make filecomp test work on CRLF platforms by adding binmode.
Branch: perl
!> lib/ExtUtils/MM_Win32.pm t/lib/filecomp.t
____________________________________________________________________________
@@ -50677,7 +51369,13 @@ ____________________________________________________________________________
!> pp_ctl.c sv.c t/lib/1_compile.t toke.c util.c
____________________________________________________________________________
[ 10358] By: jhi on 2001/05/31 12:35:05
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10350]
+ win32 - dmake regen_config_h
+
+ [ 10348]
+ Tolerate Win32 numerics
Branch: perl
!> t/pragma/warn/toke win32/config_H.bc win32/config_H.gc
!> win32/config_H.vc
@@ -50765,7 +51463,22 @@ ____________________________________________________________________________
! t/pragma/warn/toke
____________________________________________________________________________
[ 10347] By: jhi on 2001/05/31 11:29:40
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10346]
+ Hack to restore Win32 pseudo fork broken by Multiple Interpreter
+ perlio.c change 10255.
+
+ [ 10345]
+ Conditionally put back some "unused" dTHX which are used
+ with PERL_IMPLICIT_SYS
+
+ [ 10344]
+ Fix Win32 for new spelling IN_BYTES
+
+ [ 10343]
+ perlio.c -Wall cleaner under MULTIPLICITY
+ - still minor noise with linux stdio
Branch: perl
!> perlio.c win32/win32.h
____________________________________________________________________________
@@ -51704,7 +52417,11 @@ ____________________________________________________________________________
! pod/perlfunc.pod
____________________________________________________________________________
[ 10219] By: jhi on 2001/05/26 14:02:34
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10212]
+ Change perlguts docs to not suggest PUSHi etc. for multiple results,
+ add a few more notes there on use of mortals on the stack.
Branch: perl
!> pod/perlguts.pod
____________________________________________________________________________
@@ -52136,7 +52853,10 @@ ____________________________________________________________________________
! doop.c t/op/chop.t
____________________________________________________________________________
[ 10160] By: jhi on 2001/05/20 10:49:40
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10159]
+ Document some more of open's features.
Branch: perl
!> pod/perlfunc.pod
____________________________________________________________________________
@@ -52872,7 +53592,10 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 10055] By: jhi on 2001/05/09 16:26:47
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10050]
+ win32, regen_config_h
Branch: perl
!> win32/config_H.bc win32/config_H.gc win32/config_H.vc
____________________________________________________________________________
@@ -52911,7 +53634,11 @@ ____________________________________________________________________________
! win32/config_H.bc win32/config_H.gc win32/config_H.vc
____________________________________________________________________________
[ 10049] By: jhi on 2001/05/09 12:33:39
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10048]
+ If wait() or waitpid() ends due to EINTR despatch perl interrupt handler
+ and re-try. Fixes "perl 5.7.x prefers suicide over killing more than one child."
Branch: perl
!> pp_sys.c
____________________________________________________________________________
@@ -52922,7 +53649,10 @@ ____________________________________________________________________________
! pp_sys.c
____________________________________________________________________________
[ 10047] By: jhi on 2001/05/09 10:50:12
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 10045]
+ MULTIPLICITY/DEBUGGING build fix.
Branch: perl
!> run.c
____________________________________________________________________________
@@ -53398,7 +54128,14 @@ ____________________________________________________________________________
! ext/PerlIO/Scalar/Scalar.xs t/lib/io_scalar.t
____________________________________________________________________________
[ 9980] By: jhi on 2001/05/03 23:15:29
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9976]
+ Allow $answer = encode($object,$text); like it says in docs.
+
+ [ 9975]
+ Fix latin1 etc. alias code - (bit rot?) - the @latin2iso array now seems to need
+ to be in scope (fair enough), and also a package variable (our) for eval to see it.
Branch: perl
!> ext/Encode/Encode.pm
____________________________________________________________________________
@@ -53655,7 +54392,13 @@ ____________________________________________________________________________
! pp_hot.c t/op/re_tests
____________________________________________________________________________
[ 9940] By: jhi on 2001/05/01 19:42:16
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9936]
+ Fix for base.pm clobbering $VERSION
+
+ [ 9935]
+ Test for base.pm clobbering $VERSION.
Branch: perl
!> lib/base.pm t/lib/fields.t
____________________________________________________________________________
@@ -55081,7 +55824,11 @@ ____________________________________________________________________________
! ext/PerlIO/Via/Via.pm lib/PerlIO.pm
____________________________________________________________________________
[ 9767] By: jhi on 2001/04/21 12:40:16
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9766]
+ Avoid core dump on
+ open(STDOUT,">",\$foo);
Branch: perl
!> doio.c
____________________________________________________________________________
@@ -55575,7 +56322,10 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 9698] By: jhi on 2001/04/13 12:44:48
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9696]
+ Fix core dump on binmode($fh,'Scalar')
Branch: perl
!> ext/PerlIO/Scalar/Scalar.xs
____________________________________________________________________________
@@ -56195,7 +56945,28 @@ ____________________________________________________________________________
!> op.c t/op/tr.t
____________________________________________________________________________
[ 9606] By: jhi on 2001/04/07 14:43:59
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9604]
+ Split out extension finding code from buildext.pl into FindExt.pm
+ Use it to get Config.pm's idea of available extensions in line
+ with what is built.
+
+ [ 9603]
+ Cleanup correction for failed :Via() layer, also set an error code.
+
+ [ 9602]
+ Digests in lib/md5-file.t are for text files _without_ CRLF i.e. UNIX
+ style. So don't use binmode() on the handles so that Win32 etc. see
+ same sequence and produce same digests.
+
+ [ 9601]
+ Allow PerlIOBase_pushed to ignore prefix on mode (e.g. sysopen's "#r")
+ Else it complains and so crlf layer (say) does not get pushed.
+
+ [ 9599]
+ Quote $VERSION in Encode.pm.
+ regen_config_h as requested.
Branch: perl
+> win32/FindExt.pm
!> MANIFEST ext/PerlIO/Via/Via.xs perlio.c t/lib/md5-file.t
@@ -56403,7 +57174,13 @@ ____________________________________________________________________________
! pod/perlunicode.pod
____________________________________________________________________________
[ 9581] By: jhi on 2001/04/05 23:04:11
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9569]
+ Change sense from "incomplete" to "implemented but needs more work" in perlunicode.pod
+
+ [ 9549]
+ Downgrade "Wide character in print" to a warning.
Branch: perl
!> pod/perlunicode.pod
____________________________________________________________________________
@@ -57225,7 +58002,15 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 9472] By: jhi on 2001/03/30 15:16:08
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9471]
+ Should be (^O eq 'MSWin32') not 'Win32'
+ Fail #12 seems real - chdir is in wrong dir.
+
+ [ 9467]
+ Skip order test of glob if case-ignoring system cannot
+ create a.test and A.test
Branch: perl
!> t/lib/cwd.t t/lib/glob-basic.t
____________________________________________________________________________
@@ -57346,7 +58131,15 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 9456] By: jhi on 2001/03/30 02:03:32
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9455]
+ DLL name has changed so installperl needs to know
+ (Why isn't it working it out or passed it?)
+
+ [ 9454]
+ Change Encode's check arguments to 'bool' so SvTRUE gets used
+ and we don't get undef warnings.
Branch: perl
!> ext/Encode/Encode.xs installperl
____________________________________________________________________________
@@ -57382,7 +58175,10 @@ ____________________________________________________________________________
!> t/op/vec.t t/op/ver.t toke.c utils/h2xs.PL
____________________________________________________________________________
[ 9450] By: jhi on 2001/03/29 16:29:17
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9448]
+ Make sure buildext.pl finds Errno.pm
Branch: perl
!> win32/buildext.pl
____________________________________________________________________________
@@ -57397,7 +58193,10 @@ ____________________________________________________________________________
! win32/buildext.pl
____________________________________________________________________________
[ 9447] By: jhi on 2001/03/29 15:39:34
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9445]
+ Fix breakage ...
Branch: perl
!> win32/makefile.mk
____________________________________________________________________________
@@ -57420,7 +58219,26 @@ ____________________________________________________________________________
! win32/makefile.mk
____________________________________________________________________________
[ 9443] By: jhi on 2001/03/29 15:02:12
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9442]
+ Work in progress - determine win32 extensions to build via script.
+
+ [ 9435]
+ Win32 has name conflict with ERROR
+
+ [ 9432]
+ Make as-shipped compiler default to MSVC6
+
+ [ 9431]
+ Allow someone to write PerlIO::Array, PerlIO::Code, ...
+ akin to PerlIO::Scalar.
+
+ [ 9429]
+ Noticed that two tests were skipped as perlio:: package
+ isn't there any more. Changed the skip condition.
+ Avoid core-dump if sv_utf8_upgrade() called on something
+ that does not become SvPOK after SvPV() (e.g. a ref).
Branch: perl
+> win32/buildext.pl
!> MANIFEST ext/PerlIO/Via/Via.xs perlio.c perlio.h sv.c
@@ -57560,7 +58378,10 @@ ____________________________________________________________________________
! Makefile.SH
____________________________________________________________________________
[ 9422] By: jhi on 2001/03/28 18:49:34
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9421]
+ Loose duplicate chunk.
Branch: perl
!> t/op/utf8decode.t
____________________________________________________________________________
@@ -57582,7 +58403,12 @@ ____________________________________________________________________________
! t/lib/cwd.t
____________________________________________________________________________
[ 9418] By: jhi on 2001/03/28 18:34:05
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9417]
+ PerlIO.pm / perlio.pm conflict.
+ Update some pods.
+ Make t/op/utf8decode.t a text file.
Branch: perl
- lib/perlio.pm
!> MANIFEST lib/PerlIO.pm lib/open.pm perlio.c t/lib/b.t
@@ -57669,7 +58495,16 @@ ____________________________________________________________________________
! makedef.pl
____________________________________________________________________________
[ 9407] By: jhi on 2001/03/28 15:47:43
- Log: Integrate perlio. (with tweaks on t/op/utf8decode.t)
+ Log: Integrate perlio:
+
+ [ 9400]
+ More EBCDIC tweaks:
+ - one more swash issue &~(0xA0-1) did not do the right thing,
+ for UTF-EBCDIC where &~(0x80-1) does for UTF-8.
+ - add "use re 'asciirange'" to make [!-~] etc. work
+ use it in MIME::QuotedPrint and t/op/regexp.t and t/op/pat.t
+ - Choose a key for t/op/each.t test which gets encoded.
+ - Skip utf8decode if this is UTF-EBCDIC.
Branch: perl
! t/op/utf8decode.t
!> ext/MIME/Base64/QuotedPrint.pm ext/re/re.pm perl.h regcomp.c
@@ -57756,7 +58591,13 @@ ____________________________________________________________________________
! ext/IO/lib/IO/Socket.pm
____________________________________________________________________________
[ 9397] By: jhi on 2001/03/27 21:52:49
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9395]
+ Outline docs for PerlIO and PerlIO::Scalar
+
+ [ 9394]
+ PerlIO::Via layer (alpha-ish).
Branch: perl
+> ext/PerlIO/Via/Makefile.PL ext/PerlIO/Via/Via.pm
+> ext/PerlIO/Via/Via.xs
@@ -57794,7 +58635,16 @@ ____________________________________________________________________________
! embed.h embed.pl gv.c proto.h t/op/magic.t
____________________________________________________________________________
[ 9389] By: jhi on 2001/03/27 20:24:31
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9384]
+ Various EBCDIC fixes:
+ - major revelation that swash code is encoding aware,
+ (or thought it was) - now it is ;-)
+ - With that out of the way fix a slab of tr/// cases.
+ - Fix Encode 'Unicode' to be true Unicode so tests pass.
+ - As anticipated Base64.xs needed tweaks.
+ - Until tr/// works right avoid old_encode64 in MIME tests.
Branch: perl
!> doop.c ext/Encode/Encode.pm ext/MIME/Base64/Base64.xs
!> ext/MIME/Base64/QuotedPrint.pm t/lib/encode.t t/lib/mimeb64.t
@@ -57973,7 +58823,10 @@ ____________________________________________________________________________
! pp_hot.c
____________________________________________________________________________
[ 9365] By: jhi on 2001/03/26 21:07:54
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9364]
+ REFCNT botch in layer name cache hash.
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -57993,7 +58846,13 @@ ____________________________________________________________________________
! pp_sys.c
____________________________________________________________________________
[ 9362] By: jhi on 2001/03/26 18:37:52
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9361]
+ Implement flush of linebuffered streams on read of a tty.
+
+ [ 9360]
+ Memory tweaks and notes for OEMVS.
Branch: perl
!> README.os390 miniperlmain.c perlio.c perliol.h t/op/pat.t
____________________________________________________________________________
@@ -58040,7 +58899,31 @@ ____________________________________________________________________________
! ext/IO/IO.xs ext/IO/lib/IO/Socket.pm
____________________________________________________________________________
[ 9353] By: jhi on 2001/03/25 22:25:04
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9351]
+ Fix readline in list mode to tell rest of world that it has
+ things on the stack. Otherwise if perl code gets invoked
+ underneath it it scribbles over results-so-far.
+ (Why TIEHANDLE has not tripped on this is a mystery.)
+
+ [ 9350]
+ win32/makefile.mk typos
+
+ [ 9348]
+ Make it text
+
+ [ 9346]
+ Add destruct time hook to PerlIO (for work-in-process implementing
+ layers in perl code. In such cases layers need to be popped before
+ we loose the ability to run perl code.)
+ Also back-out "PerlIO::object" hook - it isn't going to work like that...
+
+ [ 9345]
+ Avoid at leasy one of undefined warnings in Encode.
+
+ [ 9343]
+ Missing return value.
Branch: perl
!> ext/Encode/Encode.pm ext/Encode/Encode.xs
!> ext/PerlIO/Scalar/Scalar.xs perl.c perlio.c perlio.h perliol.h
@@ -58170,7 +59053,14 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 9333] By: jhi on 2001/03/24 20:14:37
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9332]
+ Fix un-init variable leading to spurious "Out of Memory!"
+
+ [ 9331]
+ Tweak docs for C<open> (boy does that need wholesale revision...)
+ and update layers internals doc.
Branch: perl
!> doio.c pod/perlfunc.pod pod/perliol.pod win32/makefile.mk
____________________________________________________________________________
@@ -58243,7 +59133,30 @@ ____________________________________________________________________________
! hints/uwin.sh hints/vmesa.sh
____________________________________________________________________________
[ 9323] By: jhi on 2001/03/24 16:06:01
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9322]
+ Routine Win32 regen_config_h - no real changes.
+
+ [ 9321]
+ PerlIO fixups for Win32:
+ - provide win33_popenlist() - non-functional as yet.
+ - avoid need for aTHX in PerlIO_debug calls - even if not
+ enabled args are still evaluated so Win32 has trouble during fork().
+ - Add PerlIO/Scalar to list of extensions in win32/makefile.mk
+ - Fixup makedef.pl for latest set of symbols.
+
+ [ 9320]
+ POSIX::getcwd XS code to call Cwd::cwd when HAS_GETCWD not defined
+ was gibberish - broke it on WIn32 at least.
+
+ [ 9319]
+ Generated files.
+
+ [ 9318]
+ Implement:
+ 1. open($fh,"+<",undef); # add test to t/io/open.t
+ 2. open($fh,"+<",\$var); # New test t/lib/io_scalar.t
Branch: perl
+> ext/PerlIO/Scalar/Makefile.PL ext/PerlIO/Scalar/Scalar.pm
+> ext/PerlIO/Scalar/Scalar.xs t/lib/io_scalar.t
@@ -58298,7 +59211,53 @@ ____________________________________________________________________________
! hints/aix.sh
____________________________________________________________________________
[ 9316] By: jhi on 2001/03/23 23:40:46
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9314]
+ Perlio internals re-organized.
+ - open process creates AV of layer/arg pairs
+ (appends layers from open() or open.pm to default list).
+ - push arg is now an SV.
+ - layer ->Open get passed the AV
+ - open is no longer mandatory method.
+ - topmost layer that has ->Open method does the open
+ - any layers above are pushed once that returns.
+ - vtable re-ordered so dummy layers need only provide push/pop methods.
+
+ [ 9313]
+ Check in a stable (working) version before next round of tweaks.
+ Changes include:
+ - Move default layers code out of doio.c and into perlio.c
+ - Single routine for parsing layer specification strings.
+ - Skeleton support for demand loading of layers
+ - Core-dump avoidance if PERLIO environment specifies loadable layer
+ (does not _work_ as need IO to load and need load to do IO ...)
+
+ [ 9305]
+ Add pTHX_ to -Duseperlio API where it does not conflict with legacy stuff.
+
+ [ 9304]
+ Render -Duseperlio functional again.
+ - this is "quick fix" which calls PerlIO_apply_layers after opening,
+ which is what old scheme did. New scheme needs to change that
+ to make open(...,\$scalar) etc. work but this will do for now.
+
+ [ 9303]
+ Avoid "reopen" semantics for time being. Fix bug in dup logic.
+ -Uuseperlio now works again.
+ -Duseperlio is still poorly. Don't merge yet...
+
+ [ 9302]
+ Snapshot of new PerlIO open scheme. Still buggy - mainly in open($fh,">&STDOUT!")
+ type code.
+ - Invent PerlIO_openn() - which has "lots" of args a bit like do_openn() which
+ is its main caller. In particular now has access to "extra" args, and
+ can tell when an open handle is "reopened" (or duped?).
+ - In -Duseperlio PerlIO_open() et. al. are now wrappers on PerlIO_openn().
+ - In -Uuseperlio (untested as yet) PerlIO_openn() is a wrapper on
+ PerlIO_open() et. al. (i.e. other way round).
+ - Collapse "vtable" entries for layers - was fdopen/open/reopen now just open
+ with args close to PerlIO_openn().
Branch: perl
+> lib/PerlIO.pm
!> MANIFEST doio.c ext/Encode/Encode.xs perlio.c perlio.h
@@ -58427,7 +59386,42 @@ ____________________________________________________________________________
! doio.c ext/Encode/Encode.xs perlio.c perlio.h perliol.h
____________________________________________________________________________
[ 9301] By: jhi on 2001/03/22 20:58:04
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9300]
+ Don't include $@ in not ok message.
+
+ [ 9298]
+ Give a meaning to '&' in n-arg open case:
+ open($fh,"<&",$scalar);
+ $scalar can be:
+ - an integer which does "fdopen"
+ open($fh,"<&",2); # like open($fh,"<&2")
+ - something that will yield a file handle via sv_2io()
+ useful for dup'ing anonymous handles.
+ e.g.:
+ open(my $fh,"<&",\*STDIN);
+ open(my $dup,"<&",$fh);
+
+ [ 9297]
+ Implement open($fh,"-|",prog,args...) for HAS_FORK cases.
+
+ [ 9296]
+ Re-instate warnings for 'eof STDOUT' etc. by marking STD* as appropriate IoTYPE.
+
+ [ 9295]
+ If stdin, stdout or stderr get opened in unexpected read/write state
+ then warn at time of open not at time of use.
+
+ [ 9294]
+ Die on n-arg open(...,"",xxx,yyy,...)
+ - redirect pipe cases to PerlProc_popen_list() (which just croaks for now)
+ - die on read/write cases so we can decide what it means later.
+
+ [ 9293]
+ perlio tweaks (reported by Nick Clark)
+ Line buffer ttys, PerlIOBuf_tell() on unseekable off-by one,
+ error check in Pendinf_read().
Branch: perl
!> doio.c embed.pl iperlsys.h perl.c perlio.c pp_hot.c pp_sys.c
!> t/io/open.t util.c
@@ -58524,7 +59518,10 @@ ____________________________________________________________________________
! x2p/walk.c
____________________________________________________________________________
[ 9287] By: jhi on 2001/03/21 20:30:54
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9285]
+ Multiplicity fix for Dumper.
Branch: perl
!> ext/Data/Dumper/Dumper.xs
____________________________________________________________________________
@@ -58651,7 +59648,20 @@ ____________________________________________________________________________
!> ext/File/Glob/bsd_glob.h scope.c vms/vms.c vms/vmspipe.com
____________________________________________________________________________
[ 9268] By: jhi on 2001/03/21 00:37:04
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9267]
+ More EBCDIC stuff:
+ - Loose the extra level of function on ASCII.
+ - spotted a chr(0) issue in sv.c
+ - re-work of UTF-X tr/// ranges to work in Unicode
+ space. Still issues with the "0xff is illegal UTF-8" hack.
+ - Yet another ad. hoc. utf8 'upgrade' in op.c recoded
+ (why do it once when you can do it all over the place :-(
+ - Enable HINTS_UTF8 on EBCDIC - then ignore it in toke.c,
+ need utf8.pm for swashes.
+ - Simplified and commented scan_const() in toke.c
+ Still something wrong regexp and tr (swashes?).
Branch: perl
!> embed.pl lib/utf8.pm op.c regcomp.c regexec.c sv.c toke.c
!> utf8.c utf8.h utfebcdic.h
@@ -58769,7 +59779,15 @@ ____________________________________________________________________________
! pp_ctl.c
____________________________________________________________________________
[ 9252] By: jhi on 2001/03/19 21:42:27
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9248]
+ Tweak to perly.y to allow -DDEBUGGING to compile on OS390.
+ (Building on OS390 uses native YACC and YYDEBUG has other
+ side effects.)
+
+ [ 9246]
+ More EBCDIC fixes.
Branch: perl
!> doop.c perly.c perly.y sv.c t/camel-III/vstring.t t/op/each.t
!> t/op/length.t t/op/pack.t t/op/ver.t toke.c utf8.c utf8.h
@@ -59172,7 +60190,28 @@ ____________________________________________________________________________
!> embed.pl perl.c proto.h sv.c t/op/sort.t
____________________________________________________________________________
[ 9200] By: jhi on 2001/03/18 18:25:17
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9199]
+ Prefer !UTF8_IS_INVARIANT() over UTF8_IS_CONTINUED() when that
+ is the sense of the test being done. Avoid some magical 127 and 128 values
+ by using macros.
+
+ [ 9198]
+ UTF-X encoding invariance for Encode:
+ - move Encode::utf8_encode to utf8::encode (likewise decode,upgrade,downgrade,valid)
+ - move the XS code for those to universal.c (so in miniperl)
+ - add utf8::unicode_to_native and its inverse to allow EBCDIC to work in true unicode.
+ - change ext/Encode/compile to use above.
+ - Fix t/lib/encode.t for above
+ - Teach t/lib/b.t to expect -uutf8
+ - In utf8.c look for SWASHNEW rather than just utf8:: package to see if
+ utf8.pm is needed.
+
+ [ 9196]
+ Fix pragma/utf8.t # 15
+ - if toke.c is processing a SvUTF8 string then single quoted '...' etc.
+ are SvUTF8 as well.
Branch: perl
!> doop.c ext/Encode/Encode.pm ext/Encode/Encode.xs
!> ext/Encode/compile lib/utf8.pm pp_ctl.c sv.c t/lib/b.t
@@ -59236,7 +60275,11 @@ ____________________________________________________________________________
! doop.c op.c
____________________________________________________________________________
[ 9191] By: jhi on 2001/03/18 04:21:17
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9190]
+ Correct #if EBCDIC side typos.
+ Builds and passes many tests on OS390.
Branch: perl
!> utf8.c utfebcdic.h
____________________________________________________________________________
@@ -59252,7 +60295,28 @@ ____________________________________________________________________________
! Makefile.SH
____________________________________________________________________________
[ 9188] By: jhi on 2001/03/17 18:46:00
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9186]
+ MANIFEST addition :-(
+
+ [ 9185]
+ Infrastructure to use UTF-EBCDIC rather than UTF-8 as the internal
+ encoding on EBCDIC platforms. This has property that U+0000..U+009F i.e.
+ a superset of ASCII are invariant under the encoding. This is EBCDIC
+ friendly as an encoded string can be looked at as being EBCDIC by lexer
+ sprintf("0",...) etc. in same manner that a UTF-8 string be considered
+ ASCII on ASCII machines.
+ - re-arrange utf8.h to get ASCII specific vs Unicode generic bits
+ seperate.
+ - Add some more macros to comprehend different shift amounts and
+ possible swizzle in UTF-EBCDIC vs UTF-8. Change utf8.c to use them.
+ - add utfebcdic.h which provides UTF-EBCDIC versions of the macros,
+ and conditionally #include it.
+ EBCDIC build as yet untested. ASCII still fails the one test.
+
+ [ 9184]
+ Minor naming change UTF8_IS_ASCII => UTF8_IS_INVARIANT
Branch: perl
+> utfebcdic.h
!> MANIFEST doop.c perl.h pp.c utf8.c utf8.h
@@ -59294,7 +60358,20 @@ ____________________________________________________________________________
! doop.c perl.h pp.c utf8.h
____________________________________________________________________________
[ 9183] By: jhi on 2001/03/17 15:55:42
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9182]
+ Allow test to pass even when \C leaves SvUTF8 set by adding 'use bytes'
+
+ [ 9180]
+ EBCDIC Fixes.
+
+ [ 9173]
+ 1st day's EBCDIC fixes:
+ - toke.c's parsing of strings needed attention
+ needed to conditionally e2a if string was already UTF-8
+ - e2a/a2e tables where wrong way round.
+ - new macros in utf8.h
Branch: perl
! MANIFEST
!> perl.h sv.c t/op/pat.t toke.c utf8.c utf8.h
@@ -59653,7 +60730,11 @@ ____________________________________________________________________________
! ext/DynaLoader/dl_aix.xs hints/aix.sh makedef.pl
____________________________________________________________________________
[ 9135] By: jhi on 2001/03/13 22:50:05
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9126]
+ #ifdef'ed out code to make packed side of pack/unpack
+ octets. (i.e. pack('U') => encode_utf8).
Branch: perl
!> pp.c
____________________________________________________________________________
@@ -59819,7 +60900,10 @@ ____________________________________________________________________________
! Configure README.os390 hints/os390.sh
____________________________________________________________________________
[ 9112] By: jhi on 2001/03/13 00:29:00
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9110]
+ #ifdef'ed out code for 'USE_BYTES_DOWNGRADES' case.
Branch: perl
!> sv.c utf8.h
____________________________________________________________________________
@@ -59866,7 +60950,23 @@ ____________________________________________________________________________
! proto.h sv.c
____________________________________________________________________________
[ 9107] By: jhi on 2001/03/12 05:15:31
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9106]
+ regcomp.c is working in native space, not Unicode space (if different)
+ as it is doing compare against 'W' in \W etc.
+
+ [ 9105]
+ Audit #ifdef EBCDIC and #ifndef ASCIIish, replace latter with former.
+ Use ASCII_TO_NATIVE and NATIVE_TO_ASCII to avoid some #ifs.
+
+ [ 9104]
+ Put utf8_downgrade in CRIPPLED_CC versions of SvPVbyte* before I forget.
+
+ [ 9102]
+ USE_SFIO issues as observed by Chris Nandor <pudge@pobox.com>
+ - exclude layer syms in makedef.pl for sfio
+ - also inhibit Encode from trying to build ":encode()" layer.
Branch: perl
!> ext/Encode/Encode.xs makedef.pl regcomp.c sv.c toke.c utf8.c
____________________________________________________________________________
@@ -59930,7 +61030,18 @@ ____________________________________________________________________________
! regcomp.c regexec.c t/op/pat.t
____________________________________________________________________________
[ 9097] By: jhi on 2001/03/10 14:38:07
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9096]
+ EBCDIC sanity - phase I
+ - rename utf8/uv functions to indicate what sort of uv they provide (uvuni/uvchr)
+ - use utf8n_xxxx (c.f. pvn) for forms which take length.
+ - back out vN.N and $^V exceptions to e2a/a2e
+ - make "locale" isxxx macros be uvchr (may be redundant?)
+ Not clear yet that toUPPER_uni et. al. return being handled correctly.
+ The tr// and rexexp stuff still needs an audit, assumption is they are working
+ in Unicode space.
+ Need to provide v5.6 names for XS modules (decide is uni or chr ?).
Branch: perl
!> doop.c embed.h embed.pl ext/Encode/Encode.xs global.sym
!> handy.h objXSUB.h op.c perl.c perlapi.c pp.c pp_ctl.c proto.h
@@ -59954,7 +61065,10 @@ ____________________________________________________________________________
! regcomp.c regexec.c sv.c toke.c utf8.c utf8.h
____________________________________________________________________________
[ 9095] By: jhi on 2001/03/09 22:10:01
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9094]
+ Builds an passes all tests after integrate and this tweak.
Branch: perl
!> dump.c
____________________________________________________________________________
@@ -60277,7 +61391,13 @@ ____________________________________________________________________________
! op.c op.h
____________________________________________________________________________
[ 9053] By: jhi on 2001/03/05 23:20:28
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9052]
+ skipping USE_PERLIO symbols correction.
+
+ [ 9051]
+ More Encode alias tidying.
Branch: perl
+> ext/Encode/Encode/koi8-r.ucm
!> MANIFEST ext/Encode/Encode.pm ext/Encode/Makefile.PL
@@ -60321,7 +61441,14 @@ ____________________________________________________________________________
! pod/perlapi.pod
____________________________________________________________________________
[ 9046] By: jhi on 2001/03/05 19:12:14
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9043]
+ Update MANIFEST for new test.
+
+ [ 9042]
+ Some tests for Camel 3rd edition features.
+ Make gethostbyaddr() test in above work.
Branch: perl
+> t/camel-III/vstring.t
!> MANIFEST pp.h pp_sys.c t/TEST t/harness
@@ -60354,7 +61481,17 @@ ____________________________________________________________________________
! ext/Encode/Encode.pm
____________________________________________________________________________
[ 9040] By: jhi on 2001/03/05 17:30:43
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9039]
+ Missed added file.
+
+ [ 9037]
+ Long-standing "defined but not used" SvPVbyte*() are about to get used
+ for auto-downgrade hooks in gethostbyaddr() etc. (as per Camel-III).
+ Make SvPVbyte*() symmetric with respect to SvPVutf8*() in that:
+ - it does a sv_utf8_downgrade (c.f. SvPVutf8's sv_utf8_upgrade())
+ - uses SvPV() rather than sv_2pv() in case it isn't a string.
Branch: perl
!> MANIFEST sv.c
____________________________________________________________________________
@@ -60390,7 +61527,16 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 9034] By: jhi on 2001/03/05 15:35:14
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 9032]
+ Encode implementation "completion"
+ Implement and document define_encoding()
+ Implement and document encoding aliases including define_alias()
+ Make Encode::XS use define_encoding() rather than back-door.
+ Move run-time *.enc to separate Encode::Tcl module.
+ Make 'compile' honour <codeset_name>
+ Change canonical names of to iso-8859-* and US-ascii.
Branch: perl
+> ext/Encode/Encode/Tcl.pm
!> ext/Encode/Encode.pm ext/Encode/Encode.xs
@@ -60782,7 +61928,12 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 8988] By: jhi on 2001/03/02 19:57:08
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8969]
+ Add charname comments to .ucm files writen by 'compile',
+ also order charmaps in those files by source encoding.
+ regenerate distrubuted .ucm files
Branch: perl
!> ext/Encode/Encode/ascii.ucm ext/Encode/Encode/cp1047.ucm
!> ext/Encode/Encode/cp1250.ucm ext/Encode/Encode/cp37.ucm
@@ -61290,7 +62441,10 @@ ____________________________________________________________________________
! op.c
____________________________________________________________________________
[ 8940] By: jhi on 2001/02/26 13:35:40
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8938]
+ Encode implementations docs.
Branch: perl
!> ext/Encode/Encode.pm
____________________________________________________________________________
@@ -61321,7 +62475,23 @@ ____________________________________________________________________________
! perl.h regcomp.c t/op/pat.t t/op/tr.t toke.c
____________________________________________________________________________
[ 8934] By: jhi on 2001/02/25 17:34:35
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8927]
+ Change method names in Encode implementation classes to something
+ less confusing (preparing to "go public").
+
+ [ 8926]
+ GCC __atribute__ / printf fix
+
+ [ 8925]
+ Checked in the wrong one ...
+
+ [ 8923]
+ Encode API documentation nd tidy up.
+ Minor additions to test.
+ Tweaks sv_utf8_upgrade() to force SvPV, and always SvUTF8_on and return length.
+ Adds STRLEN to standard typemap.
Branch: perl
!> embed.pl ext/Encode/Encode.pm ext/Encode/Encode.xs
!> lib/ExtUtils/typemap perl.h perlapi.c proto.h sv.c
@@ -62073,7 +63243,14 @@ ____________________________________________________________________________
!> utf8.c
____________________________________________________________________________
[ 8832] By: jhi on 2001/02/18 19:21:18
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8830]
+ Apply the spirit of patch from Nick Clark:
+ Subject: [PATCH] Re: extensions that provide layers
+ From: Nicholas Clark <nick@ccl4.org>
+ Date: Mon, 12 Feb 2001 16:43:51 +0000
+ Message-Id: <20010212164350.Q3652@plum.flirble.org>
Branch: perl
!> perlio.c pod/perldiag.pod
____________________________________________________________________________
@@ -62106,7 +63283,15 @@ ____________________________________________________________________________
! t/op/subst_wamp.t
____________________________________________________________________________
[ 8828] By: jhi on 2001/02/18 18:43:52
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8826]
+ Fix [ID 20010217.002]
+ open FOO, "<:raw:perlio", ...
+ :raw now inserts default base layer below itself.
+ Also
+ open FOO, "<:unix", ...
+ works as well - but leaves buffer layer on stack under the unix layer.
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -62126,7 +63311,11 @@ ____________________________________________________________________________
! perlio.c
____________________________________________________________________________
[ 8825] By: jhi on 2001/02/18 17:15:39
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8820]
+ Clean up a few core dumps when layers are used in unexpected ways.
+ (Still not "right"...)
Branch: perl
!> perlio.c perliol.h
____________________________________________________________________________
@@ -64083,7 +65272,14 @@ ____________________________________________________________________________
! pod/perlapio.pod pod/perliol.pod
____________________________________________________________________________
[ 8592] By: jhi on 2001/01/30 00:48:20
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8591]
+ GNU 'merge' Simon's copy of perliol.pod with version
+ patched by Craig's patch.
+
+ [ 8590]
+ PerlIO doc tweaks from Craig A. Berry <craig.berry@psinetcs.com>
Branch: perl
!> pod/perlapio.pod pod/perliol.pod
____________________________________________________________________________
@@ -64138,7 +65334,13 @@ ____________________________________________________________________________
! Changes patchlevel.h
____________________________________________________________________________
[ 8584] By: jhi on 2001/01/28 19:30:02
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8582]
+ Add pod/perliol.pod to MANIFEST :-(
+
+ [ 8581]
+ PerlIO documentation. Proofing and sub-editing requested.
Branch: perl
+> pod/perliol.pod
!> MANIFEST pod/perlapio.pod
@@ -64821,7 +66023,16 @@ ____________________________________________________________________________
! ext/Encode/compile
____________________________________________________________________________
[ 8521] By: jhi on 2001/01/23 13:49:48
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8520]
+ More messing with Encode:
+ Extra fields in header to allow multiple names and to record
+ other things "compile" knows.
+ Re-organise compile to factor out common output routines.
+
+ [ 8519]
+ Change file-of-files command line from -F to -f to avoid case issues on VMS.
Branch: perl
!> ext/Encode/Encode.xs ext/Encode/Makefile.PL ext/Encode/compile
!> ext/Encode/encode.h
@@ -64878,7 +66089,18 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 8512] By: jhi on 2001/01/22 13:43:33
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8511]
+ Make "real" layers of ":utf8" and ":raw".
+ So now PERLIO=utf8 perl ...
+ does what Andreas wanted.
+ Fix arg passing in open.pm (still have a Carp issue).
+
+ [ 8508]
+ Switch "compiled in" encodings to .ucm format.
+ (Leave others as .enc till we can run-time load .ucm,
+ or find some other way to load them.)
Branch: perl
+> ext/Encode/Encode/ascii.ucm ext/Encode/Encode/cp1047.ucm
+> ext/Encode/Encode/cp1250.ucm ext/Encode/Encode/cp37.ucm
@@ -64992,7 +66214,31 @@ ____________________________________________________________________________
! win32/config_H.vc
____________________________________________________________________________
[ 8500] By: jhi on 2001/01/21 18:31:31
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8498]
+ Encode cleanup.
+ Add command line control over "compile" so that Makefile.PL
+ needs can be combined with other uses.
+ Use command line options in Makefile.PL.
+ Fix multi-byte parsing in .ucm files.
+
+ [ 8497]
+ Warn and set errno when open(...,":encoding(xxxxx)",...) cannot find xxxxx.
+
+ [ 8496]
+ Fixup after integrate:
+ missed the .sym files that are changed by regen_headers
+ sv.c and proto.h disagreed about pTHX_ ness of EXPECT_NUMBER.
+
+ [ 8484]
+ Infrastructure to allow:
+ open($fh,"|-",@array);
+ to be implemented
+ i.e. mark pp_open as needing a stack mark, and make pp_open
+ process its args in that style (and pass them _all_ to tied handles OPEN).
+ Invent do_openn() which takes SV ** at allow it to see multiple args.
+ Note this does not _do_ anything yet.
Branch: perl
!> doio.c embed.h embed.pl ext/Encode/Encode.xs
!> ext/Encode/Makefile.PL ext/Encode/compile global.sym objXSUB.h
@@ -65184,7 +66430,12 @@ ____________________________________________________________________________
! t/lib/1_compile.t
____________________________________________________________________________
[ 8477] By: jhi on 2001/01/19 01:49:56
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8475]
+ Win32 "safe signals" co-existance fix.
+ Fix SIG_SIZE value.
+ Clear PL_sig_pending when cloning (fork).
Branch: perl
!> sv.c win32/config.bc win32/config.gc win32/config.vc
!> win32/config_H.bc win32/config_H.gc win32/config_H.vc
@@ -65244,7 +66495,14 @@ ____________________________________________________________________________
! configure.com
____________________________________________________________________________
[ 8468] By: jhi on 2001/01/18 03:42:08
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8467]
+ "Safe" signals - trial implementation.
+ gv.c tweaked to zero PL_sig_pend array
+ perlio.c tweaked to PERL_ASYNC_CHECK() on EINTR
+ util.c tweaked to not set SA_RESTART to give perlio.c a chance.
+ Odd thing is that it "works" with PERLIO=stdio as well (linux).
Branch: perl
!> gv.c mg.c perlio.c util.c
____________________________________________________________________________
@@ -65328,7 +66586,12 @@ ____________________________________________________________________________
! win32/config.bc win32/config.gc win32/config.vc
____________________________________________________________________________
[ 8458] By: jhi on 2001/01/17 01:41:33
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8457]
+ Provide infrastructure for PERL_ASYNC_CHECK() style safe signals.
+ Provides all the "cost" but no benefit yet - it is to allow cost
+ to be measured, and implementation experiments (just in mg.c?).
Branch: perl
!> embed.h embed.pl embedvar.h gv.c intrpvar.h mg.c perl.c perl.h
!> perlapi.h proto.h sv.c
@@ -65526,7 +66789,13 @@ ____________________________________________________________________________
! t/pragma/utf8.t
____________________________________________________________________________
[ 8435] By: jhi on 2001/01/13 17:31:54
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8434]
+ Run dmake regen_config_h for Win32
+
+ [ 8433]
+ VMS friendly patch to Encode compile process
Branch: perl
!> ext/Encode/Makefile.PL ext/Encode/compile win32/config_H.bc
!> win32/config_H.gc win32/config_H.vc
@@ -65708,7 +66977,17 @@ ____________________________________________________________________________
! t/op/numconvert.t
____________________________________________________________________________
[ 8409] By: jhi on 2001/01/12 05:41:28
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8408]
+ Remove variables that were used in experiments.
+
+ [ 8407]
+ Catch die in %SIG handler and unblock the signal before re-dying.
+ This make Linux work _without_ sigsetjmp().
+ Turn off sigsetjmp() to see what else it does.
+ May need Configure probe for sigprocmask() if anything has sigaction()
+ but not sigprocmask().
Branch: perl
!> mg.c scope.h
____________________________________________________________________________
@@ -65752,7 +67031,25 @@ ____________________________________________________________________________
! regexec.c t/op/re_tests
____________________________________________________________________________
[ 8402] By: jhi on 2001/01/11 04:26:12
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8401]
+ Allow control of 2nd arg to segsetjmp() via -DSCOPE_SAVES_SIGNAL_MASK.
+ (So Alan and Ilya can try setting via hints.)
+ Verified Linux "works" with it true and fails to re-enable SIGINT if false.
+ Restoring sigmask in Perl_sighandler() if handler dies is not equivalent;
+ doing the save everywhere seems to restart read() correctly, but just
+ doing it once "round" the handler does not.
+
+ [ 8399]
+ Safe fix for Simon's pclose() doing SvIVX of undef -> core bug.
+
+ [ 8393]
+ Back out Simon's pid hackery for now.
+
+ [ 8371]
+ Fix "scalars leaked" bugs caused by overload magic
+ (Highlighted by Ilya's DESTROY optimization.)
Branch: perl
!> scope.h util.c
____________________________________________________________________________
@@ -66061,7 +67358,16 @@ ____________________________________________________________________________
! lib/Getopt/Long.pm
____________________________________________________________________________
[ 8359] By: jhi on 2001/01/08 01:55:44
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8356]
+ FILE * in XS code for PerlIO world:
+ - make PERLIO_NOT_STDIO 0 (co-existance) default for non PERL_CORE case.
+ - Add FILE * T_STDIO typemap.
+ - Finish PerlIO_findFILE() and PerlIO_extprtFILE()
+
+ [ 8346]
+ Fixup accumulated integrate muddles (perlio == devperl again)
Branch: perl
!> ext/Encode/Encode.xs lib/ExtUtils/typemap perl.c perlio.c
!> perlio.h pp.c pp_hot.c pp_sys.c sv.c t/lib/tie-refhash.t
@@ -66555,7 +67861,13 @@ ____________________________________________________________________________
! utf8.c
____________________________________________________________________________
[ 8299] By: jhi on 2001/01/02 22:14:40
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8298]
+ Turn SvUTF8 off if not required in pp_chr and pp_stringify.
+
+ [ 8296]
+ Add Encode and correct Filter/Util/Call in nmake Makefile
Branch: perl
!> pp.c pp_hot.c win32/Makefile
____________________________________________________________________________
@@ -66575,7 +67887,13 @@ ____________________________________________________________________________
! win32/Makefile
____________________________________________________________________________
[ 8295] By: jhi on 2001/01/01 23:05:48
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8293]
+ More rigor in UTF-8-ness of Encode's toUnicode
+ XS export some of the utf8 internal functions.
+ Test some of the functions.
+ Fix pp_concat() bug shown by said tests.
Branch: perl
!> ext/Encode/Encode.pm ext/Encode/Encode.xs pp_hot.c
!> t/lib/encode.t
@@ -66596,7 +67914,22 @@ ____________________________________________________________________________
! t/lib/encode.t
____________________________________________________________________________
[ 8292] By: jhi on 2001/01/01 18:11:44
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8290]
+ Loose the "Loading..." warning.
+ Another bug in fallback support
+
+ [ 8288]
+ Fix .ucm reading - forgot a chr()
+ Start of .ucm write (for .enc to .ucm)
+
+ [ 8285]
+ Start of support of ICU-style .ucm files:
+ - teach compile how to read a .ucm file
+ - first guess at how to represent fallbacks in "tries".
+ - use fallbacks if check == 0
+ - new return code to indicate we used one.
Branch: perl
!> ext/Encode/Encode.pm ext/Encode/Encode.xs ext/Encode/compile
!> ext/Encode/encengine.c ext/Encode/encode.h
@@ -66672,7 +68005,14 @@ ____________________________________________________________________________
! t/lib/glob-basic.t
____________________________________________________________________________
[ 8282] By: jhi on 2000/12/31 15:26:11
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8281]
+ Tweak perlio.c so that makedef.pl-exported perlsio_binmode()
+ is available to be exported
+
+ [ 8280]
+ Ilya's OS2 patch (testing for damage on Win32)
Branch: perl
!> makedef.pl opcode.pl os2/os2.c perlio.c
____________________________________________________________________________
@@ -66716,7 +68056,10 @@ ____________________________________________________________________________
! t/op/pat.t
____________________________________________________________________________
[ 8275] By: jhi on 2000/12/30 20:26:58
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8272]
+ Tweak for MULTIPLICITY/USE_PERLIO
Branch: perl
!> toke.c
____________________________________________________________________________
@@ -67053,7 +68396,16 @@ ____________________________________________________________________________
! pod/perldiag.pod pp_hot.c t/pragma/warn/pp_hot
____________________________________________________________________________
[ 8233] By: jhi on 2000/12/28 19:40:49
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8232]
+ Encode's Makefile.PL fix not good for dmake $(MAKEFILE) is set to -f Makefile
+ and fails to make '-f'. (Also handle case where xxxx.c files have not been deleted.)
+
+ [ 8231]
+ "Compiled" encode build cleanup
+ - Makefile uses catfile $(MAKEFILE) etc. for platform issues.
+ - .c files do not export sub-tables
Branch: perl
!> ext/Encode/Makefile.PL ext/Encode/compile
____________________________________________________________________________
@@ -67082,7 +68434,13 @@ ____________________________________________________________________________
!> pod/perlsub.pod
____________________________________________________________________________
[ 8229] By: jhi on 2000/12/22 15:32:12
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8226]
+ Handy script for when one forgets to "dmake clean"
+
+ [ 8225]
+ CRLF platform issue with io/utf8 fix.
Branch: perl
+> win32/distclean.bat
!> MANIFEST t/io/utf8.t
@@ -69319,7 +70677,17 @@ ____________________________________________________________________________
! sv.c sv.h t/lib/peek.t t/op/cmp.t t/op/numconvert.t
____________________________________________________________________________
[ 8118] By: jhi on 2000/12/14 22:46:26
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8117]
+ Win32 tweaks to get Encode to build
+ - temp hack to makedef.pl till PerlIO is properly "exported".
+ - MSVC dislikes
+ static encpage_t foo[];
+ so make 'em extern for now.
+
+ [ 8116]
+ Document the new files
Branch: perl
!> MANIFEST ext/Encode/compile makedef.pl
____________________________________________________________________________
@@ -69343,7 +70711,19 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 8114] By: jhi on 2000/12/14 21:50:49
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8106]
+ "Cold" build correction to Encode's Makefile.PL
+
+ [ 8105]
+ "Compiled" encodings.
+ Correct replacement character in EBCDIC .enc files
+ Add 0x7F to ASCII repertoire.
+
+ [ 8103]
+ Beginings of compiled encodings - checked in as a snapshot of thoughts
+ so far and so it does not get lost.
Branch: perl
+> ext/Encode/compile ext/Encode/encengine.c ext/Encode/encode.h
!> ext/Encode/Encode.pm ext/Encode/Encode.xs
@@ -69528,7 +70908,10 @@ ____________________________________________________________________________
!> lib/File/DosGlob.pm
____________________________________________________________________________
[ 8092] By: jhi on 2000/12/12 19:28:11
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8091]
+ Fix for Tk, and upgrading shared SVs.
Branch: perl
!> sv.c
____________________________________________________________________________
@@ -69563,7 +70946,22 @@ ____________________________________________________________________________
!> t/op/local.t t/pragma/warn/toke toke.c
____________________________________________________________________________
[ 8087] By: jhi on 2000/12/11 23:20:23
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8085]
+ Finish 1st pass of "encoding" layer e.g. :
+ open($fh,"<encoding(iso8859-7)",$greek) || die;
+
+ [ 8082]
+ Restore mmap function (broken by tweaks to shared buffer
+ layer for encode(xxxx)).
+
+ [ 8076]
+ Not merge worthy...
+ Allow arg to layers e.g. open($fh,"<:encode(iso8859-15)",$name)
+ syntax is modelled on attributes.
+ Untested fix for io/utf8 on Win32 etc.
+ Very clumsy start to the encode layer.
Branch: perl
!> ext/Encode/Encode.xs perlio.c perlio.h perliol.h
____________________________________________________________________________
@@ -69767,7 +71165,11 @@ ____________________________________________________________________________
! pp_sys.c
____________________________________________________________________________
[ 8060] By: jhi on 2000/12/10 02:52:46
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8059]
+ read/sysread/recv should now be utf8 aware.
+ Basic test for utf8 read.
Branch: perl
!> pp_sys.c t/io/utf8.t
____________________________________________________________________________
@@ -69778,7 +71180,33 @@ ____________________________________________________________________________
! pp_sys.c t/io/utf8.t
____________________________________________________________________________
[ 8058] By: jhi on 2000/12/09 21:56:02
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8055]
+ Make write() (i.e. formats) utf8-aware by calling do_print() rather
+ than raw PerlIO_write() - does not seem to break any tests.
+
+ [ 8054]
+ Make print, syswrite, send, readline, getc honour utf8-ness of PerlIO.
+ (sysread, recv and write i.e. formats still to do...)
+ Allow :utf8 or :bytes in PerlIO_apply_layers() so that
+ open($fh,">:utf8","name")
+ etc. work. - "applying" those just sets/clears the UTF8 bit of the top layer,
+ so no extra overhead is involved.
+ Tweak t/comp/require.t to add a 'use bytes' to permit its dubious writing of BOM
+ to a non-utf8 stream.
+ Add initial io/utf8.t
+ Fix SvPVutf8() - sv_2pv() was not expecting to be called with something
+ that was already SvPOK() - (we just fossiked with SvUTF8 bit). Fix that
+ and also just use the SvPV macro in sv_2pvutf8() to avoid the issue/overhead.
+
+ [ 8053]
+ Did not get that has_utf8/this_utf8 fix right last time, another spot
+ was only testing this_utf8.
+
+ [ 8052]
+ Typo/thinko in S_scan_const() - seeing high bit sets has_utf8 not this_utf8
+ i.e. the output string has one, but don't mess with source assumption.
Branch: perl
+> t/io/utf8.t
!> MANIFEST doio.c perlio.c pp_sys.c sv.c t/comp/require.t toke.c
@@ -69839,7 +71267,12 @@ ____________________________________________________________________________
! toke.c
____________________________________________________________________________
[ 8051] By: jhi on 2000/12/09 16:55:17
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8049]
+ UTF8 output prework.
+ - Store $\ and $, as SVs so they can have SvUTF8 flag
+ - use do_print() rather than raw PerlIO_write() to print them.
Branch: perl
!> MANIFEST embedvar.h intrpvar.h mg.c perl.c perlapi.h pp_hot.c
!> sv.c thrdvar.h util.c
@@ -70000,7 +71433,15 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 8029] By: jhi on 2000/12/08 01:21:47
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8026]
+ Various oddities p4 diff -se showed up
+ Remove 'our' from warnings.pl
+
+ [ 8025]
+ Change PerlIO_(get|set)pos to take SV *
+ Should fix, OS/2, VMS, (sfio??)
Branch: perl
!> ext/IO/IO.xs fakesdio.h global.sym lib/warnings.pm perlapi.c
!> perlio.c perlio.h perlsdio.h warnings.pl
@@ -70038,7 +71479,25 @@ ____________________________________________________________________________
! embed.pl pod/perlapi.pod utf8.c
____________________________________________________________________________
[ 8022] By: jhi on 2000/12/07 04:13:51
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8021]
+ Various attempts at MSVC debug - not sure what has
+ changed but works now.
+ Seems atexit() _may_ work for DLLs built with MSVC so don't
+ call cleanup that way.
+
+ [ 8019]
+ Add useperlio to config.vc
+ Turn off binmode in config_H.PL
+ Regen all the config_H.xx
+ Attempt to get debugging build with MSVC.
+
+ [ 8018]
+ Test various dup/external program options on all platforms.
+
+ [ 8017]
+ Fix harness to be less picky
Branch: perl
!> perlio.c t/io/dup.t win32/config.vc win32/config_H.bc
!> win32/config_H.gc win32/config_H.vc win32/config_h.PL
@@ -70201,7 +71660,16 @@ ____________________________________________________________________________
!> (integrate 69 files)
____________________________________________________________________________
[ 8002] By: jhi on 2000/12/05 22:59:28
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 8001]
+ Win32 PERL_IMPLICIT_SYS passes all tests with USE_PERLIO
+ - calloc/free suffer from damage on TerminateThread()
+ - use PerlMemShared (as originally planned) now fixed
+ - avoid doing anything important on DLL "detach".
+
+ [ 8000]
+ Fix gross PerlMemShared issue.
Branch: perl
!> iperlsys.h perl.c perlio.c win32/perllib.c
____________________________________________________________________________
@@ -70346,7 +71814,10 @@ ____________________________________________________________________________
! win32/perlhost.h win32/win32.c win32/win32.h win32/win32sck.c
____________________________________________________________________________
[ 7985] By: jhi on 2000/12/05 05:49:03
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7983]
+ PERL_IMPLICIT_SYS (almost) works - something odd with "signal"
Branch: perl
!> iperlsys.h perl.c perlio.c perlio.h perliol.h sv.c t/op/fork.t
!> win32/perlhost.h win32/perllib.c
@@ -70454,7 +71925,16 @@ ____________________________________________________________________________
! hints/aix.sh
____________________________________________________________________________
[ 7972] By: jhi on 2000/12/04 02:58:31
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7971]
+ Quieten some noise in Win32 builds:
+ - win32.h is included after <sys/socket.h>, so need to
+ set Win32SCK_IS_STDSCK earlier to avoid re-defined noise in XSUB.h
+ - GCC (& MSVC?) have execv(...,const char *const *) so need a cast from char **.
+
+ [ 7970]
+ PERL_IMPLICIT_SYS compiles but does not work.
Branch: perl
!> doio.c iperlsys.h perl.c perl.h perlio.c perlio.h toke.c
!> win32/makefile.mk win32/perlhost.h win32/perllib.c
@@ -70504,7 +71984,10 @@ ____________________________________________________________________________
! t/pragma/utf8.t
____________________________________________________________________________
[ 7964] By: jhi on 2000/12/03 17:35:56
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7961]
+ Make iperlsys.h vector stdio not PerlIO.
Branch: perl
!> iperlsys.h perlio.c
____________________________________________________________________________
@@ -70614,7 +72097,17 @@ ____________________________________________________________________________
!> t/pragma/warn/toke toke.c
____________________________________________________________________________
[ 7947] By: jhi on 2000/12/01 20:55:41
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7942]
+ Fix 'mmap' lib/filehand.t (ungetc) test fail.
+ Make 'unix' pass most tests
+ - do unread by temporary push of layer ("pending") holding unread chars
+ - fast_gets is now based on per-handle flag
+ - relax one of io/pipe.t tests to allow print to fail and close to
+ succeed so that it passes on unbuffered "unix" layer.
+ Remaining fail is sporadic and a genuine race condition between
+ parent/child in fork test.
Branch: perl
!> perlio.c perliol.h t/io/pipe.t
____________________________________________________________________________
@@ -70786,7 +72279,10 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 7922] By: jhi on 2000/11/29 16:27:49
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7906]
+ Initial tidy of setmode() muddle (UNIX does not have, nor need it).
Branch: perl
!> iperlsys.h perlio.c
____________________________________________________________________________
@@ -72090,7 +73586,24 @@ ____________________________________________________________________________
! sv.c
____________________________________________________________________________
[ 7861] By: jhi on 2000/11/26 00:01:26
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7860]
+ Correct relative path from new ext\Filter\Util\Call location
+ back to miniperl.
+
+ [ 7857]
+ All tests pass on Win32/gcc/USE_PERLIO.
+ - when crlf layer is pushed make unix-level binary.
+ - remove :crlf injection in pp_backtick in pp_sys.c
+ - (Change dependacy of extension .dll's to perldll.def rather than perl.exe)
+
+ [ 7853]
+ Re-arrange crlf vs binary for platforms that care.
+ crlf layer is now "the" buffer layer and can turn its behaviour on/off.
+ Lip-service to making stdio layer work on such platforms (untested).
+ Now fails 3 tests rather than one, checkin to see if I can debug
+ the issue under linux. (Do not merge.)
Branch: perl
!> doio.c perlio.c perliol.h pp_sys.c win32/makefile.mk
____________________________________________________________________________
@@ -72208,7 +73721,26 @@ ____________________________________________________________________________
! ext/B/B.pm
____________________________________________________________________________
[ 7847] By: jhi on 2000/11/24 03:07:01
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7844]
+ Win32/perlio Now just fails one io/argv.t test - lack
+ of default :crlf on standard streams.
+
+ [ 7843]
+ Win32 passes all but t/lib/peek.t with perlio and home-grown crlf.
+ peek fail is showing a real problem (multiple crlf layers
+ are getting pushed.)
+
+ [ 7842]
+ Implement PerlIO_binmode()
+ Fix PerlIOCrlf_unread() (*--ptr rather than *ptr-- ...)
+ Test on UNIX with PERLIO="perlio crlf" to mimic Win32,
+ make binmode in t/lib/io_tell.t unconditional so that works.
+ Checkin just so Win32 machine can see these changes.
+
+ [ 7836]
+ Implement crlf layer - not ready for merge.
Branch: perl
!> doio.c perlio.c perlio.h pp_sys.c t/lib/io_tell.t
!> win32/makefile.mk
@@ -72386,7 +73918,12 @@ ____________________________________________________________________________
! doio.c
____________________________________________________________________________
[ 7832] By: jhi on 2000/11/23 15:33:30
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7831]
+ Correct makefile.mk dependancies for ext/Filter/Util
+ Build ext/Encode
+ Run dmake regen_config_h
Branch: perl
!> win32/config_H.bc win32/config_H.gc win32/config_H.vc
!> win32/makefile.mk
@@ -72475,7 +74012,21 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 7819] By: jhi on 2000/11/22 22:03:27
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7802]
+ Win32 PerlIO intermediate state now working as expected.
+ - In current state we are still using C runtime in text/binary
+ mode and "crlf" layer is just a dummy (clone of perlio buffer layer).
+ - PERLIO=stdio and PERLIO=unix pass all expected tests.
+ - PERLIO=perlio fails t/lib/dprof.t because Dprof.xs calls PerlIO_tell()
+ and PerlIO_seek() and the dummy crlf layer is not making adjustments
+ for CRLF translation happening in C runtime. All other tests pass.
+ Added note to README.win32 to point out the snags of doing a perl build
+ with Norton AntiVirus turned on.
+ Tweaked t/pragma/warnings.t so that when run stand-alone you can tell
+ which file a fail comes from.
+ Updated "canned" config.h to match the one generated.
Branch: perl
!> README.win32 perlio.c t/pragma/warnings.t win32/config_H.gc
!> win32/makefile.mk
@@ -72649,7 +74200,18 @@ ____________________________________________________________________________
!> (integrate 28 files)
____________________________________________________________________________
[ 7797] By: jhi on 2000/11/21 21:01:45
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7796]
+ Win32 builds and runs (mostly) with USE_PERLIO.
+ PERLIO=perlio passes all tests.
+ PERLIO=stdio (sadly the default) hangs in t.pragma/warnings.t #319
+
+ [ 7790]
+ If we use (aTHX_ ...) then put Perl_ on the front. (Or drop the aTHX_).
+
+ [ 7788]
+ Make extra buffer layer work (dummy crlf layer)
Branch: perl
!> doio.c perlio.c perlio.h win32/perllib.c win32/win32.c
____________________________________________________________________________
@@ -73395,7 +74957,29 @@ ____________________________________________________________________________
! MANIFEST
____________________________________________________________________________
[ 7756] By: jhi on 2000/11/20 01:47:22
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7755]
+ Add dummy crlf layer (just as buffer)
+ Correct 1st bug - one layer of indirection.
+
+ [ 7754]
+ Work-round to Perl_deb_nocontext is no longer required
+
+ [ 7753]
+ diff -se shows these as different
+
+ [ 7752]
+ Configure GCC/Win32 build -Duseperlio
+ Fix a couple of gross issues
+ - double-include of ../deb.o in re.dll
+ - win32sck.c needs PerlIO and FILE
+
+ [ 7751]
+ Special case :crlf and :raw in dummy PerlIO_apply_layers
+
+ [ 7750]
+ Missing aTHX_
Branch: perl
- ext/re/hints/MSWin32.pl
!> global.sym perlio.c perlio.h perliol.h pod/perlapi.pod sv.c
@@ -73481,7 +75065,18 @@ ____________________________________________________________________________
! perlio.c
____________________________________________________________________________
[ 7742] By: jhi on 2000/11/18 20:33:05
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7740]
+ Lexical use open ... support:
+ add ->cop_io to COP structure in cop.h.
+ Make mg.c and gv.c associate it with ${^OPEN}.
+ Make lib/open.pm set it.
+ Have sv.c, perl.c, pp_ctl.c, op.c manipulate it in a manner
+ manner similar to ->cop_warnings.
+ Have doio.c's do_open9 and pp_sys.c's pp_backticks use it as default and
+ call new PerlIO_apply_layers().
+ Declare latter in perlio.h and define in perlio.c
Branch: perl
!> cop.h doio.c gv.c lib/open.pm mg.c op.c perl.c perlio.c
!> perlio.h pp_ctl.c pp_sys.c sv.c
@@ -73516,7 +75111,17 @@ ____________________________________________________________________________
! perlio.h pp_ctl.c pp_sys.c sv.c
____________________________________________________________________________
[ 7739] By: jhi on 2000/11/18 19:54:00
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7736]
+ Basic tweaks to do_open() type parsing to allow layer/discipline
+ part to be isolated.
+
+ [ 7727]
+ Experiment on use of attributes.pm interface.
+ Valid generic fix to auto-vivify code in rv2gv - only "upgrade" to
+ SVt_PVRV if not already something better (else vivify of say magic gets
+ core dump).
Branch: perl
!> doio.c perlio.c pp.c
____________________________________________________________________________
@@ -73692,7 +75297,14 @@ ____________________________________________________________________________
! pod/perllocale.pod
____________________________________________________________________________
[ 7713] By: jhi on 2000/11/16 23:14:06
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7711]
+ Minor tweaks:
+ consistent way of getting 'rb', 'wb' etc. for binary opens
+ move *perlio::layers to *open::layers
+ a #define to show layers available
+ DOSISH popen/PerlIO had export/import sense inverted.
Branch: perl
!> doio.c perlio.c perlio.h util.c
____________________________________________________________________________
@@ -73887,7 +75499,10 @@ ____________________________________________________________________________
!> win32/makefile.mk win32/win32.c win32/win32.h win32/win32sck.c
____________________________________________________________________________
[ 7685] By: jhi on 2000/11/14 17:54:56
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7684]
+ PerlIO #include and #ifdef re-work.
Branch: perl
+> fakesdio.h perliol.h
!> MANIFEST iperlsys.h nostdio.h perl.c perlio.c perlio.h
@@ -74103,7 +75718,10 @@ ____________________________________________________________________________
! pod/perlfunc.pod
____________________________________________________________________________
[ 7657] By: jhi on 2000/11/12 20:34:55
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7656]
+ Add aTHX_ to Perl_croak's (MULTIPLICITY et. al.)
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -74201,7 +75819,11 @@ ____________________________________________________________________________
! perlio.c
____________________________________________________________________________
[ 7644] By: jhi on 2000/11/11 15:46:08
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7641]
+ Fixup mmap layer by doing mmap() calls on pagesize boundaries.
+ Also call "Buf" layer directly when unread'ing non-read chars.
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -74724,7 +76346,10 @@ ____________________________________________________________________________
! t/comp/proto.t
____________________________________________________________________________
[ 7575] By: jhi on 2000/11/06 20:17:08
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7574]
+ Remove debug. Try (Mmap_t) on madvise() call.
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -74782,7 +76407,11 @@ ____________________________________________________________________________
! perlio.c
____________________________________________________________________________
[ 7566] By: jhi on 2000/11/05 21:15:56
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7564]
+ Added a mmap layer as a "subclass" of perlio.
+ PERLIO=mmap ./perl harness passes
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -74833,7 +76462,18 @@ ____________________________________________________________________________
! t/lib/syslog.t
____________________________________________________________________________
[ 7558] By: jhi on 2000/11/05 17:29:19
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7555]
+ Fix read from STDERR on raw unix layer for Solaris where fd 2 is
+ open RDWR so does not fail. (pragma/warnings 303 again...)
+
+ [ 7554]
+ Fix case where ungetc(f,EOF) was allowed.
+ Move PerlIO_ungetc() near PerlIO_putc()/PerlIO_getc() in the file
+ so we can see similarities.
+ Use types more carefully and a STDCHAR array in hope that this will
+ fix Jarkko's 64bit machine.
Branch: perl
!> perlio.c
____________________________________________________________________________
@@ -74864,7 +76504,7 @@ ____________________________________________________________________________
Move PerlIO_ungetc() near PerlIO_putc()/PerlIO_getc() in the file
so we can see similarities.
Use types more carefully and a STDCHAR array in hope that this will
- fix Jarrko's 64bit machine.
+ fix Jarkko's 64bit machine.
Branch: perlio
! perlio.c
____________________________________________________________________________
@@ -74918,7 +76558,60 @@ ____________________________________________________________________________
! t/lib/b.t
____________________________________________________________________________
[ 7547] By: jhi on 2000/11/04 22:43:56
- Log: Integrate perlio.
+ Log: Integrate perlio:
+
+ [ 7539]
+ PerlIO infrastructure complete.
+
+ [ 7538]
+ Type tweaks + less contorted allocation scheme
+
+ [ 7537]
+ Fix for stdio as default "discipline" - PerlIO_init() was fdopen(2,"w")'ing
+ a fresh FILE * rather than re-using stderr. Which meant PerlIO_stderr() was
+ fully buffered rather than unbuffered (on Solaris, Linux seemed to do something
+ sensible) which lead to some interesting fails.
+
+ [ 7535]
+ Implement stack of layers - (perlio.c _is_ derived from the old file honest...)
+ - Works on Linux with
+ perlio + unix
+ stdio
+ - Works on Solaris with
+ perlio + unix
+ - Fails ONE test (print to STDIN should fail) on Solaris with stdio.
+ - Fails (hangs in openpid) if you try and stack
+ perlio + stdio - Linux stdio's read() logic is hanging.
+
+ [ 7492]
+ Change files which are mysteriously different to mainline to be
+ copies of mainline.
+
+ [ 7491]
+ Perlio fixes discovered on big-endian & very traditional Solaris:
+ - typo in endian code in putc.
+ - Don't allow read of write-only files and vice-versa
+ - and off-by-one in flush-all loop.
+ Remove debug calls as they were using GCC specific features.
+
+ [ 7484]
+ PerlIO passes all tests.
+
+ [ 7482]
+ Include <unistd.h> to get correct lseek() prototype etc.
+ (I thought perl.h did that) - down to two fails
+ - comp/require.t (last test)
+ - lib/io_xs.t - possibly import/export of FILE * ?
+
+ [ 7480]
+ Fixed two bugs:
+ - error code not being set on close (of broken pipe)
+ - append mode was truncating.
+ At least one seek/tell bug remains.
+
+ [ 7479]
+ Prototype (stdio-like) PerlIO passing basic tests. Checked in
+ in case of accidents. Still several worrying fails, no line disciplines yet.
Branch: perl
+> lib/perlio.pm
!> MANIFEST iperlsys.h objXSUB.h perlapi.c perlio.c
diff --git a/Porting/findrfuncs b/Porting/findrfuncs
index 4254a7afb1..520f158381 100644
--- a/Porting/findrfuncs
+++ b/Porting/findrfuncs
@@ -1,11 +1,14 @@
-#!/usr/bin/perl -w
+#!/usr/bin/perl -ws
#
# findrfuncs: find reentrant variants of functions used in an executable.
+#
# Requires a functional "nm -u". Searches headers in /usr/include
# to find available *_r functions and looks for non-reentrant
# variants used in the supplied executable.
#
+# Requires debug info in the shared libraries/executables.
+#
# Gurusamy Sarathy
# gsar@ActiveState.com
#
@@ -106,7 +109,7 @@ my %syms;
for my $exe (@EXES) {
# warn "#--- $exe\n";
- for my $sym (`$NMU $exe`) {
+ for my $sym (`$NMU $exe 2>/dev/null`) {
chomp $sym;
$sym =~ s/^\s+//;
$sym =~ s/^([0-9A-Fa-f]+\s+)?[Uu]\s+//;
@@ -128,4 +131,3 @@ for my $exe (@EXES) {
}
@syms = ();
}
-
diff --git a/README.amiga b/README.amiga
index f287d65c99..00c4ff1822 100644
--- a/README.amiga
+++ b/README.amiga
@@ -6,6 +6,13 @@ specially designed to be readable as is.
perlamiga - Perl under Amiga OS
+=head1 NOTE
+
+B<Perl 5.8.0 cannot be built in AmigaOS. You can use either the
+maintenance release Perl 5.6.1 or the development release Perl 5.7.2
+in AmigaOS. See L</"PERL 5.8.0 BROKEN IN AMIGAOS"> if you want to help
+fixing this problem.>
+
=head1 SYNOPSIS
One can read this document in the following formats:
@@ -244,6 +251,21 @@ Run
make install
+=head1 PERL 5.8.0 BROKEN IN AMIGAOS
+
+As told above, Perl 5.6.1 was still good in AmigaOS, as was 5.7.2.
+After Perl 5.7.2 (change #11423, see the Changes file, and the file
+pod/perlhack.pod for how to get the individual changes) Perl dropped
+its internal support for vfork(), and that was very probably the step
+that broke AmigaOS (since the ixemul library has only vfork).
+The build finally fails when the ext/DynaLoader is being built, and
+PERL ends up as "0" in the produced Makefile, trying to run "0" does
+not quite work. Also, executing miniperl in backticks seems to
+generate nothing: very probably related to the (v)fork problems.
+B<Fixing the breakage requires someone quite familiar with the ixemul
+library, and how one is supposed to run external commands in AmigaOS
+without fork().>
+
=head1 AUTHORS
Norbert Pueschel, pueschel@imsdd.meb.uni-bonn.de
diff --git a/README.irix b/README.irix
index dddb5ffa96..9cafd26f21 100644
--- a/README.irix
+++ b/README.irix
@@ -52,7 +52,15 @@ errors (especially with -Duse64bitall).
=head2 Building with threads
-For Irix 6.2, you have to have the following patches installed:
+Run Configure with -Duseithreads which will configure Perl with
+the new Perl 5.8.0 "interpreter threads", see L<threads>.
+
+The old Perl 5.005 threads is obsolete, unmaintained, and its use is
+discouraged. If you really want it, run Configure with the
+-Dusethreads -Duse5005threads options as described in INSTALL.
+
+For either thread model and for Irix 6.2, you have to have the
+following patches installed:
1404 Irix 6.2 Posix 1003.1b man pages
1645 Irix 6.2 & 6.3 POSIX header file updates
@@ -64,6 +72,9 @@ IMPORTANT: Without patch 2401, a kernel bug in Irix 6.2 will cause
your machine to panic and crash when running threaded perl. Irix 6.3
and later are okay.
+ Thanks to Hannu Napari <Hannu.Napari@hut.fi> for the IRIX
+ pthreads patches information.
+
=head1 AUTHOR
Jarkko Hietaniemi <jhi@iki.fi>
diff --git a/README.tru64 b/README.tru64
index 64cefa9512..1ec08ffab6 100644
--- a/README.tru64
+++ b/README.tru64
@@ -8,59 +8,61 @@ README.tru64 - Perl version 5 on Tru64 (formerly known as Digital UNIX formerly
=head1 DESCRIPTION
-This document describes various features of Compaq's (formerly Digital's)
-Unix operating system (Tru64) that will affect how Perl version 5
-is compiled and/or runs.
+This document describes various features of HP's (formerly Compaq's,
+formerly Digital's) Unix operating system (Tru64) that will affect
+how Perl version 5 is configured, compiled and/or runs.
=head2 Compiling Perl 5 on Tru64
The recommended compiler to use in Tru64 is the native C compiler.
-The native compiler produces much faster code (the speed difference
-is noticeable: several dozen percentages) and also more correct code:
-if you are considering using the GNU C compiler you should use the
-gcc 2.95.3 since all older gcc releases are known to produce broken
-code when compiling Perl. One manifestation of this brokenness is
-the lib/sdbm test dumping core; another is the op/regexp dumping core
-(depending on the GCC release).
+The native compiler produces much faster code (the speed difference is
+noticeable: several dozen percentages) and also more correct code: if
+you are considering using the GNU C compiler you should use the gcc
+2.95.3 since all older gcc releases are known to produce broken code
+when compiling Perl. One manifestation of this brokenness is the
+lib/sdbm test dumping core; another is the op/regexp and op/pat,
+or ext/Storable tests dumping core (depending on the GCC release).
=head2 Using Large Files with Perl on Tru64
-In Tru64 Perl is automatically able to use large files, that is, files
-larger than 2 gigabytes, there is no need to use the Configure
+In Tru64 Perl is automatically able to use large files, that is,
+files larger than 2 gigabytes, there is no need to use the Configure
-Duselargefiles option as described in INSTALL.
=head2 Threaded Perl on Tru64
-To compile Perl to use the old Perl 5.005 threads model, run Configure
-with the -Dusethreads -Duse5005threads options as described in INSTALL.
-This will probably only work in Tru64 4.0 and newer releases, older
-operating releases like 3.2 aren't probably going to work properly
-with threads.
+If you want to use threads, you should primarily use the new Perl
+5.8.0 threads model by running Configure with -Duseithreads.
-Beware: the Perl 5.005 threads model is known to have bugs, for
-example the regular expressions are not thread-safe. The bugs are
-very hard to fix are and therefore the 5.005 threads model is still
-classified as an experimental feature.
+The old Perl 5.005 threads is obsolete, unmaintained, and its use is
+discouraged. If you really want it, run Configure with the
+-Dusethreads -Duse5005threads options as described in INSTALL.
+
+Either thread model is going to work only in Tru64 4.0 and newer
+releases, older operating releases like 3.2 aren't probably going
+to work properly with threads.
=head2 Long Doubles on Tru64
-You cannot Configure Perl to use long doubles unless you have at least
-Tru64 V5.0, the long double support simply wasn't functional before
-that.
+You cannot Configure Perl to use long doubles unless you have at
+least Tru64 V5.0, the long double support simply wasn't functional
+enough before that.
-At the time of this writing, there's a bug in the Tru64 libc printing
-of long doubles when not using "e" notation. The values are correct
-and usable, but you only get a limited number of digits displayed
-unless you force the issue by using C<printf "%.33e",$num> or the like.
-For Tru64 versions V5.0A through V5.1A, a patch is expected sometime after
-perl 5.8.0 is released. If your libc has not yet been patched, you'll get
-a warning from Configure when selecting long doubles.
+At the time of this writing (June 2002), there is a known bug in the
+Tru64 libc printing of long doubles when not using "e" notation.
+The values are correct and usable, but you only get a limited number
+of digits displayed unless you force the issue by using C<printf
+"%.33e",$num> or the like. For Tru64 versions V5.0A through V5.1A, a
+patch is expected sometime after perl 5.8.0 is released. If your libc
+has not yet been patched, you'll get a warning from Configure when
+selecting long doubles.
=head2 64-bit Perl on Tru64
In Tru64 Perl's integers are automatically 64-bit wide, there is
no need to use the Configure -Duse64bitint option as described
-in INSTALL. Similarly, there is no need for -Duse64bitall.
+in INSTALL. Similarly, there is no need for -Duse64bitall
+since pointers are automatically 64-bit wide.
=head2 Warnings about floating-point overflow when compiling Perl on Tru64
@@ -78,7 +80,8 @@ and when compiling the POSIX extension
-------------------^
The exact line numbers may vary between Perl releases.
-The warnings are benign and can be ignored.
+The warnings are benign and can be ignored: in later C compiler
+releases the warnings should be gone.
When the file F<pp_sys.c> is being compiled you may (depending on the
operating system release) see an additional compiler flag being used:
@@ -96,7 +99,7 @@ the use of the C<-P> option of Perl.
=head1 ext/ODBM_File/odbm Test Failing With Static Builds
The ext/ODBM_File/odbm is known to fail with static builds
-(Configure -Dusedl) due to a known bug in Tru64's static libdbm
+(Configure -Uusedl) due to a known bug in Tru64's static libdbm
library. The good news is that you very probably don't need to ever
use the ODBM_File extension since more advanced NDBM_File works fine,
not to mention the even more advanced DB_File.
diff --git a/README.vms b/README.vms
index 1be778d571..06deb13a93 100644
--- a/README.vms
+++ b/README.vms
@@ -606,23 +606,23 @@ gethostbyname() or gethostbyaddr() using DEC or Compaq C with a
Multinet TCP/IP stack. The problem was noted in Multinet 4.3A
using either Compaq C 6.5 or DEC C 6.0, and with Multinet 4.2A
using DEC C 5.2, but could easily affect other versions of Multinet.
-A representative of Process Software Inc. has acknowledged a
-bug in the Multinet version of UCX$IPC_SHR for which there is
-an ECO forthcoming. If you see one or more tests in lib/Net/hostent
-fail we recommend that you apply the Multinet ECO when it becomes
-available from:
+Process Software Inc. has acknowledged a bug in the Multinet version
+of UCX$IPC_SHR and has provided an ECO for it. The ECO is called
+UCX_LIBRARY_EMULATION-010_A044 and is available from:
http://www.multinet.process.com/eco.html
-You may determine the version of Multinet that you are running using
-the command:
+As of this writing, the ECO is only available for Multinet versions
+4.3A and later. You may determine the version of Multinet that you
+are running using the command:
multinet show /version
from the DCL command prompt.
-If you cannot wait for the ECO from Process you might try using
-Perl programming constructs such as:
+If the ECO is unavailable for your version of Multinet and you are
+unable to upgrade, you might try using Perl programming constructs
+such as:
$address = substr($gethostbyname_addr,0,4);
diff --git a/hints/amigaos.sh b/hints/amigaos.sh
index 5800e662a1..52ba0bd4c3 100644
--- a/hints/amigaos.sh
+++ b/hints/amigaos.sh
@@ -11,7 +11,6 @@ usenm='true'
usemymalloc='n'
useperlio='true'
d_eofnblk='define'
-d_fork='define'
groupstype='int'
# libs
@@ -24,11 +23,12 @@ xlibpth="$libpth"
# to just these few. E.g. what about Berkeley DB?
libswanted='gdbm m dld'
so=' '
+libs='-lm'
# compiler & linker flags
# Respect command-line values.
-ccflags="$ccflags -DAMIGAOS -mstackextend -Dfork=ix_vfork_resume"
+ccflags="$ccflags -DAMIGAOS"
case "$optimize" in
'') optimize='-O2 -fomit-frame-pointer';;
esac
diff --git a/lib/ExtUtils/Changes b/lib/ExtUtils/Changes
index 5f274c95e4..268065ae30 100644
--- a/lib/ExtUtils/Changes
+++ b/lib/ExtUtils/Changes
@@ -1,3 +1,14 @@
+6.02 Sat Jun 15 19:46:06 EDT 2002
+ - ExtUtils::Installed->modules() was broken in scalar context
+ - Sync bleadperl 16922: Netware updates from Ananth Kesari.
+ - Sync bleadperl 16922: MM_NW5 tests
+ - Sync bleadperl 16938 & 16974: MM_MacOS->macify fixes from pudge.
+ - Sync bleadperl 16989 & 16942: Small test fixes for MacPerl from pudge.
+ - Improved WriteMakefile param verification to differenciate between
+ parameters which don't exist and those that just take strings/numbers.
+ [RT #707]
+ * Documented TEST_VERBOSE
+
6.01 Thu May 30 14:48:57 EDT 2002
- MacOS Classic fixes from Pudge: recursive make repair,
post_initialize() now used, DEFINE & INC work with relative paths,
diff --git a/lib/ExtUtils/Command.pm b/lib/ExtUtils/Command.pm
index 22eece7fa6..6593ab3a35 100644
--- a/lib/ExtUtils/Command.pm
+++ b/lib/ExtUtils/Command.pm
@@ -106,9 +106,9 @@ sub rm_f
expand_wildcards();
foreach (@ARGV)
{
- next unless -f $_;
+ next unless -f $_;
next if unlink($_);
- chmod(0777,$_);
+ chmod(0777,$_);
next if unlink($_);
carp "Cannot delete $_:$!";
}
@@ -147,7 +147,7 @@ sub mv
croak("Too many arguments") if (@ARGV > 1 && ! -d $dst);
while (@ARGV)
{
- my $src = shift(@ARGV);
+ my $src = shift(@ARGV);
move($src,$dst);
}
}
@@ -157,7 +157,7 @@ sub mv
Copies source to destination.
Multiple sources are allowed if destination is an existing directory.
-=cut
+=cut
sub cp
{
@@ -166,7 +166,7 @@ sub cp
croak("Too many arguments") if (@ARGV > 1 && ! -d $dst);
while (@ARGV)
{
- my $src = shift(@ARGV);
+ my $src = shift(@ARGV);
copy($src,$dst);
}
}
diff --git a/lib/ExtUtils/Installed.pm b/lib/ExtUtils/Installed.pm
index 7edde47d80..1375a8299f 100644
--- a/lib/ExtUtils/Installed.pm
+++ b/lib/ExtUtils/Installed.pm
@@ -12,7 +12,7 @@ use File::Spec;
require VMS::Filespec if $^O eq 'VMS';
use vars qw($VERSION);
-$VERSION = '0.05';
+$VERSION = '0.06';
my $DOSISH = ($^O =~ /^(MSWin\d\d|os2|dos|mint)$/);
@@ -130,7 +130,9 @@ sub new {
sub modules {
my ($self) = @_;
- return sort keys %$self;
+
+ # Bug/feature of sort in scalar context requires this.
+ return wantarray ? sort keys %$self : keys %$self;
}
sub files {
diff --git a/lib/ExtUtils/MM_MacOS.pm b/lib/ExtUtils/MM_MacOS.pm
index 71eb96952f..cbef99ba75 100644
--- a/lib/ExtUtils/MM_MacOS.pm
+++ b/lib/ExtUtils/MM_MacOS.pm
@@ -50,7 +50,7 @@ sub new {
}
mkdir("Obj", 0777) unless -d "Obj";
-
+
$self = {} unless (defined $self);
my(%initial_att) = %$self; # record initial attributes
diff --git a/lib/ExtUtils/MM_Unix.pm b/lib/ExtUtils/MM_Unix.pm
index cb516a5dc4..0cd45eb962 100644
--- a/lib/ExtUtils/MM_Unix.pm
+++ b/lib/ExtUtils/MM_Unix.pm
@@ -19,7 +19,7 @@ use vars qw($VERSION @ISA
use ExtUtils::MakeMaker qw($Verbose neatvalue);
-$VERSION = '1.32';
+$VERSION = '1.33';
require ExtUtils::MM_Any;
@ISA = qw(ExtUtils::MM_Any);
@@ -1719,10 +1719,13 @@ usually solves this kind of problem.
}
# strip blanks
- if ($self->{VERSION}) {
+ if (defined $self->{VERSION}) {
$self->{VERSION} =~ s/^\s+//;
$self->{VERSION} =~ s/\s+$//;
}
+ else {
+ $self->{VERSION} = '';
+ }
($self->{VERSION_SYM} = $self->{VERSION}) =~ s/\W/_/g;
$self->{DISTVNAME} = "$self->{DISTNAME}-$self->{VERSION}";
@@ -2741,7 +2744,7 @@ q[-e 'next if -e $$m{$$_} && -M $$m{$$_} < -M $$_ && -M $$m{$$_} < -M "],
$self->{MAKEFILE}, q[";' \\
-e 'print "Manifying $$m{$$_}\n";' \\
-e 'system(q[$(PERLRUN) $(POD2MAN_EXE) ].qq[$$_>$$m{$$_}])==0 or warn "Couldn\\047t install $$m{$$_}\n";' \\
--e 'chmod(oct($(PERM_RW))), $$m{$$_} or warn "chmod $(PERM_RW) $$m{$$_}: $$!\n";}'
+-e 'chmod(oct($(PERM_RW)), $$m{$$_}) or warn "chmod $(PERM_RW) $$m{$$_}: $$!\n";}'
];
push @m, "\nmanifypods : pure_all ";
push @m, join " \\\n\t", keys %{$self->{MAN1PODS}}, keys %{$self->{MAN3PODS}};
diff --git a/lib/ExtUtils/MakeMaker.pm b/lib/ExtUtils/MakeMaker.pm
index 69cf10607f..91cc91ccce 100644
--- a/lib/ExtUtils/MakeMaker.pm
+++ b/lib/ExtUtils/MakeMaker.pm
@@ -2,10 +2,10 @@ package ExtUtils::MakeMaker;
BEGIN {require 5.005_03;}
-$VERSION = "6.01";
+$VERSION = "6.02";
$Version_OK = "5.49"; # Makefiles older than $Version_OK will die
# (Will be checked from MakeMaker version 4.13 onwards)
-($Revision = substr(q$Revision: 1.59 $, 10)) =~ s/\s+$//;
+($Revision = substr(q$Revision: 1.61 $, 10)) =~ s/\s+$//;
require Exporter;
use Config;
@@ -54,32 +54,111 @@ sub WriteMakefile {
}
-# Basic signatures of the attributes WriteMakefile takes. Each is
-# the reference type. Any not noted simply take strings.
+# Basic signatures of the attributes WriteMakefile takes. Each is the
+# reference type. Empty value indicate it takes a non-reference
+# scalar.
my %Att_Sigs =
(
- C => 'array',
- CONFIG => 'array',
- CONFIGURE => 'code',
- DIR => 'array',
- DL_FUNCS => 'hash',
- DL_VARS => 'array',
- EXCLUDE_EXT=> 'array',
- EXE_FILES => 'array',
- FUNCLIST => 'array',
- H => 'array',
- IMPORTS => 'hash',
- INCLUDE_EXT=> 'array',
- LIBS => ['array','string'],
- MAN1PODS => 'hash',
- MAN3PODS => 'hash',
- PL_FILES => 'hash',
- PM => 'hash',
- PMLIBDIRS => 'array',
- PREREQ_PM => 'hash',
- SKIP => 'array',
- TYPEMAPS => 'array',
- XS => 'hash',
+ ABSTRACT => '',
+ ABSTRACT_FROM => '',
+ AUTHOR => '',
+ BINARY_LOCATION => '',
+ C => 'array',
+ CCFLAGS => '',
+ CONFIG => 'array',
+ CONFIGURE => 'code',
+ DEFINE => '',
+ DIR => 'array',
+ DISTNAME => '',
+ DL_FUNCS => 'hash',
+ DL_VARS => 'array',
+ EXCLUDE_EXT => 'array',
+ EXE_FILES => 'array',
+ FIRST_MAKEFILE => '',
+ FULLPERL => '',
+ FULLPERLRUN => '',
+ FULLPERLRUNINST => '',
+ FUNCLIST => 'array',
+ H => 'array',
+ IMPORTS => 'hash',
+ INC => '',
+ INCLUDE_EXT => 'array',
+ INSTALLARCHLIB => '',
+ INSTALLBIN => '',
+ INSTALLDIRS => '',
+ INSTALLMAN1DIR => '',
+ INSTALLMAN3DIR => '',
+ INSTALLPRIVLIB => '',
+ INSTALLSCRIPT => '',
+ INSTALLSITEARCH => '',
+ INSTALLSITEBIN => '',
+ INSTALLSITELIB => '',
+ INSTALLSITEMAN1DIR => '',
+ INSTALLSITEMAN3DIR => '',
+ INSTALLVENDORARCH => '',
+ INSTALLVENDORBIN => '',
+ INSTALLVENDORLIB => '',
+ INSTALLVENDORMAN1DIR => '',
+ INSTALLVENDORMAN3DIR => '',
+ INST_ARCHLIB => '',
+ INST_BIN => '',
+ INST_LIB => '',
+ INST_MAN1DIR => '',
+ INST_MAN3DIR => '',
+ INST_SCRIPT => '',
+ _KEEP_AFTER_FLUSH => '',
+ LDFROM => '',
+ LIB => '',
+ LIBPERL_A => '',
+ LIBS => ['array',''],
+ LINKTYPE => '',
+ MAKEAPERL => '',
+ MAKEFILE => '',
+ MAN1PODS => 'hash',
+ MAN3PODS => 'hash',
+ MAP_TARGET => '',
+ MYEXTLIB => '',
+ NAME => '',
+ NEEDS_LINKING => '',
+ NOECHO => '',
+ NORECURS => '',
+ NO_VC => '',
+ OBJECT => '',
+ OPTIMIZE => '',
+ PERL => '',
+ PERL_CORE => '',
+ PERLMAINCC => '',
+ PERL_ARCHLIB => '',
+ PERL_LIB => '',
+ PERL_MALLOC_OK => '',
+ PERLRUN => '',
+ PERLRUNINST => '',
+ PERL_SRC => '',
+ PERM_RW => '',
+ PERM_RWX => '',
+ PL_FILES => 'hash',
+ PM => 'hash',
+ PMLIBDIRS => 'array',
+ PM_FILTER => '',
+ POLLUTE => '',
+ PPM_INSTALL_EXEC => '',
+ PPM_INSTALL_SCRIPT => '',
+ PREFIX => '',
+ PREREQ_FATAL => '',
+ PREREQ_PM => 'hash',
+ PREREQ_PRINT => '',
+ PRINT_PREREQ => '',
+ SITEPREFIX => '',
+ SKIP => 'array',
+ TYPEMAPS => 'array',
+ VENDORPREFIX => '',
+ VERBINST => '',
+ VERSION => '',
+ VERSION_FROM => '',
+ XS => 'hash',
+ XSOPT => '',
+ XSPROTOARG => '',
+ XS_VERSION => '',
clean => 'hash',
depend => 'hash',
@@ -93,10 +172,10 @@ my %Att_Sigs =
);
my %Default_Att = (
- string => '',
+ '' => '',
hash => {},
array => [],
- code => sub {}
+ code => sub {},
);
sub _verify_att {
@@ -104,14 +183,19 @@ sub _verify_att {
while( my($key, $val) = each %$att ) {
my $sig = $Att_Sigs{$key};
- my @sigs = ref $sig ? @$sig : ($sig || 'string');
- my $given = lc ref $val || 'string';
+ unless( defined $sig ) {
+ warn "WARNING: $key is not a known parameter.\n";
+ next;
+ }
+
+ my @sigs = ref $sig ? @$sig : $sig;
+ my $given = lc ref $val;
unless( grep $given eq $_, @sigs ) {
- my $takes = join " or ", map { $_ ne 'string' ? "$_ reference"
- : "string/number"
+ my $takes = join " or ", map { $_ ne '' ? "$_ reference"
+ : "string/number"
} @sigs;
- my $has = $given ne 'string' ? "$given reference"
- : "string/number";
+ my $has = $given ne '' ? "$given reference"
+ : "string/number";
warn "WARNING: $key takes a $takes not a $has.\n".
" Please inform the author.\n";
$att->{$key} = $Default_Att{$sigs[0]};
@@ -954,14 +1038,17 @@ Other interesting targets in the generated Makefile are
=head2 make test
MakeMaker checks for the existence of a file named F<test.pl> in the
-current directory and if it exists it adds commands to the test target
-of the generated Makefile that will execute the script with the proper
-set of perl C<-I> options.
+current directory and if it exists it execute the script with the
+proper set of perl C<-I> options.
MakeMaker also checks for any files matching glob("t/*.t"). It will
-add commands to the test target of the generated Makefile that execute
-all matching files in alphabetical order via the L<Test::Harness>
-module with the C<-I> switches set correctly.
+execute all matching files in alphabetical order via the
+L<Test::Harness> module with the C<-I> switches set correctly.
+
+If you'd like to see the raw output of your tests, set the
+C<TEST_VERBOSE> variable to true.
+
+ make test TEST_VERBOSE=1
=head2 make testdb
@@ -969,13 +1056,13 @@ A useful variation of the above is the target C<testdb>. It runs the
test under the Perl debugger (see L<perldebug>). If the file
F<test.pl> exists in the current directory, it is used for the test.
-If you want to debug some other testfile, set C<TEST_FILE> variable
+If you want to debug some other testfile, set the C<TEST_FILE> variable
thusly:
make testdb TEST_FILE=t/mytest.t
By default the debugger is called using C<-d> option to perl. If you
-want to specify some other option, set C<TESTDB_SW> variable:
+want to specify some other option, set the C<TESTDB_SW> variable:
make testdb TESTDB_SW=-Dx
@@ -1795,13 +1882,6 @@ by the PREFIX.
Defaults to $Config{installprefixexp}.
-=item PREREQ_PM
-
-Hashref: Names of modules that need to be available to run this
-extension (e.g. Fcntl for SDBM_File) are the keys of the hash and the
-desired version is the value. If the required version number is 0, we
-only check if any version is installed already.
-
=item PREREQ_FATAL
Bool. If this parameter is true, failing to have the required modules
@@ -1816,6 +1896,13 @@ at a later time, e.g. after an unsuccessful B<make test> of your module.
It is I<extremely> rare to have to use C<PREREQ_FATAL> at all!
+=item PREREQ_PM
+
+Hashref: Names of modules that need to be available to run this
+extension (e.g. Fcntl for SDBM_File) are the keys of the hash and the
+desired version is the value. If the required version number is 0, we
+only check if any version is installed already.
+
=item PREREQ_PRINT
Bool. If this parameter is true, the prerequisites will be printed to
@@ -1888,7 +1975,7 @@ MakeMaker object. The following lines will be parsed o.k.:
$VERSION = '1.00';
*VERSION = \'1.01';
- ( $VERSION ) = '$Revision: 1.59 $ ' =~ /\$Revision:\s+([^\s]+)/;
+ ( $VERSION ) = '$Revision: 1.61 $ ' =~ /\$Revision:\s+([^\s]+)/;
$FOO::VERSION = '1.10';
*FOO::VERSION = \'1.11';
our $VERSION = 1.2.3; # new for perl5.6.0
diff --git a/lib/ExtUtils/t/00setup_dummy.t b/lib/ExtUtils/t/00setup_dummy.t
index a55fc004a6..2d5b1ee5c1 100644
--- a/lib/ExtUtils/t/00setup_dummy.t
+++ b/lib/ExtUtils/t/00setup_dummy.t
@@ -12,12 +12,12 @@ chdir 't';
use strict;
use Test::More tests => 9;
-use File::Spec::Functions;
-use File::Path;
use File::Basename;
+use File::Path;
+use File::Spec;
my %Files = (
- catfile(curdir(),'Big-Dummy','lib','Big','Dummy.pm') => <<'END',
+ 'Big-Dummy/lib/Big/Dummy.pm' => <<'END',
package Big::Dummy;
$VERSION = 0.01;
@@ -25,7 +25,7 @@ $VERSION = 0.01;
1;
END
- catfile(curdir(),'Big-Dummy','Makefile.PL') => <<'END',
+ 'Big-Dummy/Makefile.PL' => <<'END',
use ExtUtils::MakeMaker;
printf "Current package is: %s\n", __PACKAGE__;
@@ -37,14 +37,14 @@ WriteMakefile(
);
END
- catfile(curdir(),'Big-Dummy','t','compile.t') => <<'END',
+ 'Big-Dummy/t/compile.t' => <<'END',
print "1..2\n";
print eval "use Big::Dummy; 1;" ? "ok 1\n" : "not ok 1\n";
print "ok 2 - TEST_VERBOSE\n";
END
- catfile(curdir(),'Big-Dummy','Liar','t','sanity.t') => <<'END',
+ 'Big-Dummy/Liar/t/sanity.t' => <<'END',
print "1..3\n";
print eval "use Big::Dummy; 1;" ? "ok 1\n" : "not ok 1\n";
@@ -52,7 +52,7 @@ print eval "use Big::Liar; 1;" ? "ok 2\n" : "not ok 2\n";
print "ok 3 - TEST_VERBOSE\n";
END
- catfile(curdir(),'Big-Dummy','Liar','lib','Big','Liar.pm') => <<'END',
+ 'Big-Dummy/Liar/lib/Big/Liar.pm' => <<'END',
package Big::Liar;
$VERSION = 0.01;
@@ -60,7 +60,7 @@ $VERSION = 0.01;
1;
END
- catfile(curdir(),'Big-Dummy','Liar','Makefile.PL') => <<'END',
+ 'Big-Dummy/Liar/Makefile.PL' => <<'END',
use ExtUtils::MakeMaker;
my $mm = WriteMakefile(
@@ -75,7 +75,7 @@ foreach my $key (qw(INST_LIB INST_ARCHLIB)) {
}
END
- catfile(curdir(),'Problem-Module','Makefile.PL') => <<'END',
+ 'Problem-Module/Makefile.PL' => <<'END',
use ExtUtils::MakeMaker;
WriteMakefile(
@@ -83,7 +83,7 @@ WriteMakefile(
);
END
- catfile(curdir(),'Problem-Module','subdir','Makefile.PL') => <<'END',
+ 'Problem-Module/subdir/Makefile.PL' => <<'END',
printf "\@INC %s .\n", (grep { $_ eq '.' } @INC) ? "has" : "doesn't have";
warn "I think I'm going to be sick\n";
@@ -93,6 +93,9 @@ END
);
while(my($file, $text) = each %Files) {
+ # Convert to a relative, native file path.
+ $file = File::Spec->catfile(File::Spec->curdir, split m{\/}, $file);
+
my $dir = dirname($file);
mkpath $dir;
open(FILE, ">$file");
diff --git a/lib/ExtUtils/t/Command.t b/lib/ExtUtils/t/Command.t
index 2e0e08fa1a..ff9eec1da4 100644
--- a/lib/ExtUtils/t/Command.t
+++ b/lib/ExtUtils/t/Command.t
@@ -107,7 +107,8 @@ BEGIN {
SKIP: {
if ($^O eq 'amigaos' || $^O eq 'os2' || $^O eq 'MSWin32' ||
$^O eq 'NetWare' || $^O eq 'dos' || $^O eq 'cygwin' ||
- $^O eq 'MacOS') {
+ $^O eq 'MacOS'
+ ) {
skip( "different file permission semantics on $^O", 3);
}
diff --git a/lib/ExtUtils/t/Installed.t b/lib/ExtUtils/t/Installed.t
index a1db4340ae..d62afba434 100644
--- a/lib/ExtUtils/t/Installed.t
+++ b/lib/ExtUtils/t/Installed.t
@@ -20,7 +20,7 @@ use File::Path;
use File::Basename;
use File::Spec;
-use Test::More tests => 45;
+use Test::More tests => 46;
BEGIN { use_ok( 'ExtUtils::Installed' ) }
@@ -81,7 +81,9 @@ ok( $ei->_is_under('baz', @under), '... should find file under dir' );
my $wrotelist;
-ok(scalar mkpath('auto/FakeMod'));
+
+rmtree 'auto/FakeMod';
+ok( mkpath('auto/FakeMod') );
END { rmtree 'auto/FakeMod' }
ok(open(PACKLIST, '>auto/FakeMod/.packlist'));
@@ -129,6 +131,9 @@ $ei->{$_} = 1 for qw( abc def ghi );
is( join(' ', $ei->modules()), 'abc def ghi',
'modules() should return sorted keys' );
+# This didn't work for a long time due to a sort in scalar context oddity.
+is( $ei->modules, 3, 'modules() in scalar context' );
+
# files
$ei->{goodmod} = {
packlist => {
diff --git a/lib/ExtUtils/t/writemakefile_args.t b/lib/ExtUtils/t/writemakefile_args.t
index 3877aa661f..2160f08255 100644
--- a/lib/ExtUtils/t/writemakefile_args.t
+++ b/lib/ExtUtils/t/writemakefile_args.t
@@ -14,7 +14,7 @@ BEGIN {
}
use strict;
-use Test::More tests => 12;
+use Test::More tests => 16;
use TieOut;
use MakeMaker::Test::Utils;
@@ -53,7 +53,7 @@ VERIFY
VERSION_FROM => 'lib/Big/Dummy.pm',
AUTHOR => sub {},
);
-
+
is( $warnings, <<VERIFY );
WARNING: AUTHOR takes a string/number not a code reference.
Please inform the author.
@@ -70,7 +70,7 @@ VERIFY
VERSION_FROM => 'lib/Big/Dummy.pm',
LIBS => '-lwibble -lwobble',
);
-
+
# We'll get warnings about the bogus libs, that's ok.
unlike( $warnings, qr/WARNING: .* takes/ );
is_deeply( $mm->{LIBS}, ['-lwibble -lwobble'] );
@@ -81,7 +81,7 @@ VERIFY
VERSION_FROM => 'lib/Big/Dummy.pm',
LIBS => ['-lwibble', '-lwobble'],
);
-
+
# We'll get warnings about the bogus libs, that's ok.
unlike( $warnings, qr/WARNING: .* takes/ );
is_deeply( $mm->{LIBS}, ['-lwibble', '-lwobble'] );
@@ -92,9 +92,22 @@ VERIFY
VERSION_FROM => 'lib/Big/Dummy.pm',
LIBS => { wibble => "wobble" },
);
-
+
# We'll get warnings about the bogus libs, that's ok.
like( $warnings, qr{^WARNING: LIBS takes a array reference or string/number not a hash reference}m );
is_deeply( $mm->{LIBS}, [] );
+
+ $warnings = '';
+ $mm = WriteMakefile(
+ NAME => 'Big::Dummy',
+ WIBBLE => 'something',
+ wump => { foo => 42 },
+ );
+
+ like( $warnings, qr{^WARNING: WIBBLE is not a known parameter.\n}m );
+ like( $warnings, qr{^WARNING: wump is not a known parameter.\n}m );
+
+ is( $mm->{WIBBLE}, 'something' );
+ is_deeply( $mm->{wump}, { foo => 42 } );
}
diff --git a/lib/Test/Harness.pm b/lib/Test/Harness.pm
index 4714f77ecf..d79a6cb73d 100644
--- a/lib/Test/Harness.pm
+++ b/lib/Test/Harness.pm
@@ -1,5 +1,5 @@
# -*- Mode: cperl; cperl-indent-level: 4 -*-
-# $Id: Harness.pm,v 1.33 2002/05/29 23:02:48 schwern Exp $
+# $Id: Harness.pm,v 1.37 2002/06/16 06:55:09 schwern Exp $
package Test::Harness;
@@ -12,7 +12,7 @@ use Config;
use strict;
use vars qw($VERSION $Verbose $Switches $Have_Devel_Corestack $Curtest
- $Columns $verbose $switches $ML
+ $Columns $verbose $switches $ML $Strap
@ISA @EXPORT @EXPORT_OK
);
@@ -22,7 +22,7 @@ use vars qw($VERSION $Verbose $Switches $Have_Devel_Corestack $Curtest
$Have_Devel_Corestack = 0;
-$VERSION = '2.24';
+$VERSION = '2.25';
$ENV{HARNESS_ACTIVE} = 1;
@@ -36,7 +36,7 @@ my $Ignore_Exitcode = $ENV{HARNESS_IGNORE_EXITCODE};
my $Files_In_Dir = $ENV{HARNESS_FILELEAK_IN_DIR};
-my $Strap = Test::Harness::Straps->new;
+$Strap = Test::Harness::Straps->new;
@ISA = ('Exporter');
@EXPORT = qw(&runtests);
@@ -324,7 +324,8 @@ or failed based on their output to STDOUT (details above). It prints
out each individual test which failed along with a summary report and
a how long it all took.
-It returns true if everything was ok, false otherwise.
+It returns true if everything was ok. Otherwise it will die() with
+one of the messages in the DIAGNOSTICS section.
=for _private
This is just _run_all_tests() plus _show_results()
@@ -496,7 +497,7 @@ sub _run_all_tests {
print "$test{ml}ok\n ".join(', ', @msg)."\n";
} elsif ($test{max}) {
print "$test{ml}ok\n";
- } elsif (length $test{skip_all}) {
+ } elsif (defined $test{skip_all} and length $test{skip_all}) {
print "skipped\n all skipped: $test{skip_all}\n";
$tot{skipped}++;
} else {
diff --git a/lib/Test/Harness/Changes b/lib/Test/Harness/Changes
index 03eaab3563..53862ffae9 100644
--- a/lib/Test/Harness/Changes
+++ b/lib/Test/Harness/Changes
@@ -1,5 +1,17 @@
Revision history for Perl extension Test::Harness
+2.25 Sun Jun 16 03:00:33 EDT 2002
+ - $Strap is now a global to allow Test::Harness::Straps
+ experimentation.
+ - Little spelling nit in a diagnostic.
+ - Chris Richmond noted that the runtests() docs were wrong. It will
+ die, not return false, when any tests fail. This is silly, but
+ historically necessary for 'make test'. Docs corrected.
+ - MacPerl test fixes from Pudge. (mutation of bleadperl@16989)
+ - Undef warning introduced in 2.24 on skipped tests with no reasons
+ fixed.
+ * Test::Harness now depends on File::Spec
+
2.24 Wed May 29 19:02:18 EDT 2002
* Nikola Knezevic found a bug when tests are completely skipped
but no reason is given it was considered a failure.
diff --git a/lib/Test/Harness/Straps.pm b/lib/Test/Harness/Straps.pm
index 7b018aebd4..8f3d1168ef 100644
--- a/lib/Test/Harness/Straps.pm
+++ b/lib/Test/Harness/Straps.pm
@@ -1,12 +1,12 @@
# -*- Mode: cperl; cperl-indent-level: 4 -*-
-# $Id: Straps.pm,v 1.8 2002/05/29 23:02:48 schwern Exp $
+# $Id: Straps.pm,v 1.11 2002/06/16 06:55:10 schwern Exp $
package Test::Harness::Straps;
use strict;
use vars qw($VERSION);
use Config;
-$VERSION = '0.12';
+$VERSION = '0.13';
use Test::Harness::Assert;
use Test::Harness::Iterator;
@@ -187,7 +187,7 @@ sub _analyze_line {
# print "ok $num\n";
if( $self->{saw_lone_not} &&
($self->{lone_not_line} == $self->{line} - 1) )
- {
+ {
$result{ok} = 0;
}
@@ -207,7 +207,7 @@ sub _analyze_line {
$totals->{ok}++ if $pass;
if( $result{number} > 100000 ) {
- warn "Enourmous test number seen [test $result{number}]\n";
+ warn "Enormous test number seen [test $result{number}]\n";
warn "Can't detailize, too big.\n";
}
else {
@@ -328,11 +328,8 @@ sub _switches {
# When taint mode is on, PERL5LIB is ignored. So we need to put
# all that on the command line as -Is.
- if ($first =~ /^#!.*\bperl.*\s-\w*([Tt]+)/) {
- $s .= join " ", qq[ "-$1"], map {qq["-I$_"]} $self->_filtered_INC;
- } elsif ($^O eq 'MacOS') {
- $s .= join " ", map {qq["-I$_"]} $self->_filtered_INC;
- }
+ $s .= join " ", qq[ "-$1"], map {qq["-I$_"]} $self->_filtered_INC
+ if $first =~ /^#!.*\bperl.*\s-\w*([Tt]+)/;
close(TEST) or print "can't close $file. $!\n";
@@ -355,7 +352,7 @@ sub _INC2PERL5LIB {
$self->{_old5lib} = $ENV{PERL5LIB};
return join $Config{path_sep}, $self->_filtered_INC;
-}
+}
=item B<_filtered_INC>
@@ -399,7 +396,7 @@ sub _restore_PERL5LIB {
$ENV{PERL5LIB} = $self->{_old5lib};
}
}
-
+
=end _private
diff --git a/lib/Test/Harness/t/callback.t b/lib/Test/Harness/t/callback.t
index 74b2fe9e2e..d77495887c 100644
--- a/lib/Test/Harness/t/callback.t
+++ b/lib/Test/Harness/t/callback.t
@@ -10,13 +10,13 @@ BEGIN {
}
}
-use File::Spec::Functions;
+use Test::More;
+use File::Spec;
+my $Curdir = File::Spec->curdir;
my $SAMPLE_TESTS = $ENV{PERL_CORE}
- ? catdir(curdir(), 'lib', 'sample-tests')
- : catdir(curdir(), 't', 'sample-tests');
-
-use Test::More;
+ ? File::Spec->catdir($Curdir, 'lib', 'sample-tests')
+ : File::Spec->catdir($Curdir, 't', 'sample-tests');
%samples = (
bailout => [qw( header test test test bailout )],
@@ -51,15 +51,10 @@ $strap->{callback} = sub {
my($self, $line, $type, $totals) = @_;
push @out, $type;
};
-
-$SAMPLE_TESTS = VMS::Filespec::unixify($SAMPLE_TESTS) if $^O eq 'VMS';
while( my($test, $expect) = each %samples ) {
local @out = ();
-
- $strap->analyze_file($^O eq 'MacOS' ?
- catfile($SAMPLE_TESTS, $test) :
- "$SAMPLE_TESTS/$test");
+ $strap->analyze_file(File::Spec->catfile($SAMPLE_TESTS, $test));
is_deeply(\@out, $expect, "$test callback");
}
diff --git a/lib/Test/Harness/t/strap-analyze.t b/lib/Test/Harness/t/strap-analyze.t
index c3e3d1e13b..06c0966e6e 100644
--- a/lib/Test/Harness/t/strap-analyze.t
+++ b/lib/Test/Harness/t/strap-analyze.t
@@ -10,20 +10,18 @@ BEGIN {
}
}
-use File::Spec::Functions;
-
-my $SAMPLE_TESTS = $ENV{PERL_CORE}
- ? catdir(curdir(), 'lib', 'sample-tests')
- : catdir(curdir(), 't', 'sample-tests');
-
use strict;
use Test::More;
+use File::Spec;
+
+my $Curdir = File::Spec->curdir;
+my $SAMPLE_TESTS = $ENV{PERL_CORE}
+ ? File::Spec->catdir($Curdir, 'lib', 'sample-tests')
+ : File::Spec->catdir($Curdir, 't', 'sample-tests');
-if ($^O eq 'MacOS') {
- plan skip_all => "Exit status broken on Mac OS";
-}
-my $IsVMS = $^O eq 'VMS';
+my $IsMacPerl = $^O eq 'MacOS';
+my $IsVMS = $^O eq 'VMS';
# VMS uses native, not POSIX, exit codes.
my $die_exit = $IsVMS ? 44 : 1;
@@ -444,17 +442,14 @@ my %samples = (
},
);
-plan tests => (keys(%samples) * 3) + 3;
+plan tests => (keys(%samples) * 4) + 3;
use_ok('Test::Harness::Straps');
$SIG{__WARN__} = sub {
- warn @_ unless $_[0] =~ /^Enourmous test number/ ||
+ warn @_ unless $_[0] =~ /^Enormous test number/ ||
$_[0] =~ /^Can't detailize/
};
-
-$SAMPLE_TESTS = VMS::Filespec::unixify($SAMPLE_TESTS) if $^O eq 'VMS';
-
while( my($test, $expect) = each %samples ) {
for (0..$#{$expect->{details}}) {
$expect->{details}[$_]{type} = ''
@@ -465,20 +460,29 @@ while( my($test, $expect) = each %samples ) {
unless exists $expect->{details}[$_]{reason};
}
+ my $test_path = File::Spec->catfile($SAMPLE_TESTS, $test);
my $strap = Test::Harness::Straps->new;
- my %results = $strap->analyze_file($^O eq 'MacOS' ?
- catfile($SAMPLE_TESTS, $test) :
- "$SAMPLE_TESTS/$test");
+ my %results = $strap->analyze_file($test_path);
is_deeply($results{details}, $expect->{details}, "$test details" );
delete $expect->{details};
delete $results{details};
- # We can only check if it's zero or non-zero.
- is( !!$results{'wait'}, !!$expect->{'wait'}, 'wait status' );
- delete $results{'wait'};
- delete $expect->{'wait'};
+ SKIP: {
+ skip '$? unreliable in MacPerl', 2 if $IsMacPerl;
+
+ # We can only check if it's zero or non-zero.
+ is( !!$results{'wait'}, !!$expect->{'wait'}, 'wait status' );
+ delete $results{'wait'};
+ delete $expect->{'wait'};
+
+ # Have to check the exit status seperately so we can skip it
+ # in MacPerl.
+ is( $results{'exit'}, $expect->{'exit'} );
+ delete $results{'exit'};
+ delete $expect->{'exit'};
+ }
is_deeply(\%results, $expect, " the rest $test" );
}
diff --git a/lib/Test/Harness/t/test-harness.t b/lib/Test/Harness/t/test-harness.t
index 1e9f58ddb5..c04e2e2cfa 100644
--- a/lib/Test/Harness/t/test-harness.t
+++ b/lib/Test/Harness/t/test-harness.t
@@ -10,13 +10,14 @@ BEGIN {
}
}
-use File::Spec::Functions;
+use strict;
+use File::Spec;
+my $Curdir = File::Spec->curdir;
my $SAMPLE_TESTS = $ENV{PERL_CORE}
- ? catdir(curdir(), 'lib', 'sample-tests')
- : catdir(curdir(), 't', 'sample-tests');
+ ? File::Spec->catdir($Curdir, 'lib', 'sample-tests')
+ : File::Spec->catdir($Curdir, 't', 'sample-tests');
-use strict;
# For shutting up Test::Harness.
# Has to work on 5.004 which doesn't have Tie::StdHandle.
@@ -39,11 +40,11 @@ package main;
use Test::More;
-my $IsVMS = $^O eq 'VMS';
-my $IsMacOS = $^O eq 'MacOS';
+my $IsMacPerl = $^O eq 'MacOS';
+my $IsVMS = $^O eq 'VMS';
# VMS uses native, not POSIX, exit codes.
-my $die_estat = $IsVMS ? 44 : $IsMacOS ? 0 : 1;
+my $die_estat = $IsVMS ? 44 : 1;
my %samples = (
simple => {
@@ -415,7 +416,7 @@ my %samples = (
},
);
-plan tests => (keys(%samples) * 7) + 1;
+plan tests => (keys(%samples) * 8) + 1;
use Test::Harness;
use_ok('Test::Harness');
@@ -423,22 +424,23 @@ use_ok('Test::Harness');
tie *NULL, 'My::Dev::Null' or die $!;
-$SAMPLE_TESTS = VMS::Filespec::unixify($SAMPLE_TESTS) if $^O eq 'VMS';
-
while (my($test, $expect) = each %samples) {
# _run_all_tests() runs the tests but skips the formatting.
my($totals, $failed);
- my $warning;
+ my $warning = '';
+ my $test_path = File::Spec->catfile($SAMPLE_TESTS, $test);
+
eval {
select NULL; # _run_all_tests() isn't as quiet as it should be.
local $SIG{__WARN__} = sub { $warning .= join '', @_; };
($totals, $failed) =
- Test::Harness::_run_all_tests($^O eq 'MacOS' ?
- catfile($SAMPLE_TESTS, $test) :
- "$SAMPLE_TESTS/$test");
+ Test::Harness::_run_all_tests($test_path);
};
select STDOUT;
+ # $? is unreliable in MacPerl, so we'll simply fudge it.
+ $failed->{estat} = $die_estat if $IsMacPerl and $failed;
+
SKIP: {
skip "special tests for bailout", 1 unless $test eq 'bailout';
like( $@, '/Further testing stopped: GERONI/i' );
@@ -453,9 +455,7 @@ while (my($test, $expect) = each %samples) {
is_deeply( {map { $_=>$totals->{$_} } keys %{$expect->{total}}},
$expect->{total},
"$test - totals" );
- is_deeply( {map { $_=>$failed->{$^O eq 'MacOS' ?
- catfile($SAMPLE_TESTS, $test) :
- "$SAMPLE_TESTS/$test"}{$_} }
+ is_deeply( {map { $_=>$failed->{$test_path}{$_} }
keys %{$expect->{failed}}},
$expect->{failed},
"$test - failed" );
@@ -464,12 +464,16 @@ while (my($test, $expect) = each %samples) {
SKIP: {
skip "special tests for bignum", 1 unless $test eq 'bignum';
is( $warning, <<WARN );
-Enourmous test number seen [test 100001]
+Enormous test number seen [test 100001]
Can't detailize, too big.
-Enourmous test number seen [test 136211425]
+Enormous test number seen [test 136211425]
Can't detailize, too big.
WARN
}
+ SKIP: {
+ skip "bignum has known warnings", 1 if $test eq 'bignum';
+ is( $warning, '' );
+ }
}
diff --git a/op.c b/op.c
index 8ee4e3123b..00386806f4 100644
--- a/op.c
+++ b/op.c
@@ -3423,7 +3423,7 @@ Perl_utilize(pTHX_ int aver, I32 floor, OP *version, OP *id, OP *arg)
pack = newSVOP(OP_CONST, 0, newSVsv(((SVOP*)id)->op_sv));
/* Fake up a method call to import/unimport */
- meth = aver ? newSVpvn("import",6) : newSVpvn("unimport", 8);;
+ meth = aver ? newSVpvn("import",6) : newSVpvn("unimport", 8);
(void)SvUPGRADE(meth, SVt_PVIV);
(void)SvIOK_on(meth);
PERL_HASH(SvUVX(meth), SvPVX(meth), SvCUR(meth));
diff --git a/perl.c b/perl.c
index e4ca5a005e..3c2a04f677 100644
--- a/perl.c
+++ b/perl.c
@@ -435,14 +435,15 @@ perl_destruct(pTHXx)
if (CALL_FPTR(PL_threadhook)(aTHX)) {
/* Threads hook has vetoed further cleanup */
- return STATUS_NATIVE_EXPORT;;
+ return STATUS_NATIVE_EXPORT;
}
/* We must account for everything. */
/* Destroy the main CV and syntax tree */
if (PL_main_root) {
- PL_curpad = AvARRAY(PL_comppad);
+ /* If running under -d may not have PL_comppad. */
+ PL_curpad = PL_comppad ? AvARRAY(PL_comppad) : NULL;
op_free(PL_main_root);
PL_main_root = Nullop;
}
@@ -490,7 +491,7 @@ perl_destruct(pTHXx)
#endif
/* The exit() function will do everything that needs doing. */
- return STATUS_NATIVE_EXPORT;;
+ return STATUS_NATIVE_EXPORT;
}
/* jettison our possibly duplicated environment */
diff --git a/perlio.c b/perlio.c
index 304107bcd3..25c78aa5e9 100644
--- a/perlio.c
+++ b/perlio.c
@@ -632,7 +632,7 @@ PerlIO_pop(pTHX_ PerlIO *f)
if ((*l->tab->Popped) (aTHX_ f) != 0)
return;
}
- *f = l->next;;
+ *f = l->next;
Safefree(l);
}
}
diff --git a/perlsfio.h b/perlsfio.h
index 1b1b522ed8..0a2cf3c558 100644
--- a/perlsfio.h
+++ b/perlsfio.h
@@ -60,11 +60,11 @@ extern int _stdprintf _ARG_((const char*, ...));
#define PerlIO_tmpfile() sftmp(0)
#if 0
-#define PerlIO_importFILE(f,fl) ((void) Perl_croak(aTHX_ "Import from FILE * unimplemeted"), NULL)
+#define PerlIO_importFILE(f,fl) ((void) Perl_croak(aTHX_ "Import from FILE * unimplemented"), NULL)
#define PerlIO_findFILE(f) NULL
#endif
-#define PerlIO_exportFILE(f,fl) Perl_croak(aTHX_ "Export to FILE * unimplemeted")
-#define PerlIO_releaseFILE(p,f) Perl_croak(aTHX_ "Release of FILE * unimplemeted")
+#define PerlIO_exportFILE(f,fl) Perl_croak(aTHX_ "Export to FILE * unimplemented")
+#define PerlIO_releaseFILE(p,f) Perl_croak(aTHX_ "Release of FILE * unimplemented")
#define PerlIO_setlinebuf(f) sfset(f,SF_LINE,1)
diff --git a/pod/perldelta.pod b/pod/perldelta.pod
index c00b3626b2..dfb6b9304e 100644
--- a/pod/perldelta.pod
+++ b/pod/perldelta.pod
@@ -737,7 +737,8 @@ See L<perlmod>
=item *
-C<Attribute::Handlers> allows a class to define attribute handlers.
+C<Attribute::Handlers>, originally by Damian Conway and now maintained
+by Arthur Bergman, allows a class to define attribute handlers.
package MyPack;
use Attribute::Handlers;
@@ -2071,13 +2072,6 @@ The order of DESTROYs has been made more predictable.
=item *
-Several debugger fixes: exit code now reflects the script exit code,
-condition C<"0"> now treated correctly, the C<d> command now checks
-line number, C<$.> no longer gets corrupted, and all debugger output
-now goes correctly to the socket if RemotePort is set. [561]
-
-=item *
-
Perl 5.6.0 could emit spurious warnings about redefinition of
dl_error() when statically building extensions into perl.
This has been corrected. [561]
@@ -2777,6 +2771,13 @@ respectively.
=item *
+Several debugger fixes: exit code now reflects the script exit code,
+condition C<"0"> now treated correctly, the C<d> command now checks
+line number, C<$.> no longer gets corrupted, and all debugger output
+now goes correctly to the socket if RemotePort is set. [561]
+
+=item *
+
The debugger (perl5db.pl) has been modified to present a more
consistent commands interface, via (CommandSet=580). perl5db.t was
also added to test the changes, and as a placeholder for further tests.
@@ -2912,6 +2913,8 @@ There are now several profiling make targets.
=head1 Security Vulnerability Closed [561]
(This change was already made in 5.7.0 but bears repeating here.)
+(5.7.0 came out before 5.6.1: the development branch 5.7 released
+sooner than the maintenance branch 5.6)
A potential security vulnerability in the optional suidperl component
of Perl was identified in August 2000. suidperl is neither built nor
diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod
index e858b26a4a..f2ca525317 100644
--- a/pod/perlfunc.pod
+++ b/pod/perlfunc.pod
@@ -5232,7 +5232,7 @@ it's an anonymous function declaration, and does actually return
a value: the CODE ref of the closure you just created.
See L<perlsub> and L<perlref> for details about subroutines and
-references, and L<attributes> and L<Attributed::Handlers> for more
+references, and L<attributes> and L<Attribute::Handlers> for more
information about attributes.
=item substr EXPR,OFFSET,LENGTH,REPLACEMENT
diff --git a/pp.c b/pp.c
index ae29d7930d..7fa9c06933 100644
--- a/pp.c
+++ b/pp.c
@@ -956,6 +956,8 @@ PP(pp_pow)
result *= base;
/* Only bother to clear the bit if it is set. */
power &= ~bit;
+ /* Avoid squaring base again if we're done. */
+ if (power == 0) break;
}
}
SP--;
diff --git a/sv.c b/sv.c
index 71630180fa..f3d39ce722 100644
--- a/sv.c
+++ b/sv.c
@@ -9342,7 +9342,7 @@ Perl_cx_dup(pTHX_ PERL_CONTEXT *cxs, I32 ix, I32 max, CLONE_PARAMS* param)
case CXt_EVAL:
ncx->blk_eval.old_in_eval = cx->blk_eval.old_in_eval;
ncx->blk_eval.old_op_type = cx->blk_eval.old_op_type;
- ncx->blk_eval.old_namesv = sv_dup_inc(cx->blk_eval.old_namesv, param);;
+ ncx->blk_eval.old_namesv = sv_dup_inc(cx->blk_eval.old_namesv, param);
ncx->blk_eval.old_eval_root = cx->blk_eval.old_eval_root;
ncx->blk_eval.cur_text = sv_dup(cx->blk_eval.cur_text, param);
break;
diff --git a/t/lib/MakeMaker/Test/Utils.pm b/t/lib/MakeMaker/Test/Utils.pm
index fff8055edb..9260faf343 100644
--- a/t/lib/MakeMaker/Test/Utils.pm
+++ b/t/lib/MakeMaker/Test/Utils.pm
@@ -15,7 +15,7 @@ $VERSION = 0.02;
make make_run make_macro calibrate_mtime
);
-my $Is_VMS = $^O eq 'VMS';
+my $Is_VMS = $^O eq 'VMS';
my $Is_MacOS = $^O eq 'MacOS';