Chip Salzenberg [Tue, 19 Nov 1996 00:07:25 +0000]
Fix undef warning in Math::BigInt
Jarkko Hietaniemi [Wed, 9 Apr 1997 00:00:00 +0000]
Complex update (five patches)
Chip Salzenberg [Wed, 9 Apr 1997 00:00:00 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Chip Salzenberg [Wed, 9 Apr 1997 00:00:00 +0000]
MM_Unix patch for use under CVS
(this is the same change as commit
d3e8569c62819ccd17f9de64244d9bd181aa37b6, but as applied)
Ulrich Pfeifer [Fri, 11 Apr 1997 12:59:00 +0000]
MM_Unix patch for use under CVS
Subject: Re: MM_Unix patch
>>>>> "Nick" == Nick Ing-Simmons <nik@tiuk.ti.com> writes:
Nick> Seems a little strong did you mean /^\.#/ ?
No. Every '#' in a Makefile file list will break the list:
Makefile
,-----
| FILES = foo \
| bar#bazz \
| bizz
|
| all:
| @echo $(FILES)
`-----
Shell
,-----
| % make -f ~/tmp/Makefile
| foo bar
`-----
Below is a more complete patch.
p5p-msgid: yfmd8s1vhpn.fsf@ls6.informatik.uni-dortmund.de
Chip Salzenberg [Wed, 9 Apr 1997 00:00:00 +0000]
Minor type cleanup
Chip Salzenberg [Fri, 21 Mar 1997 02:50:39 +0000]
Put "dXSUB_SYS" last in declarations
Chip Salzenberg [Wed, 9 Apr 1997 00:00:00 +0000]
Before 'BEGIN not safe', explain why
Scott Henry [Sat, 12 Apr 1997 01:05:03 +0000]
update to 5.003_97b/hint/irix_6_2.sh
It is possible with the 7.1 compilers for IRIX-6.2 and later to
change the default compiler options for the system. You need to
explicitely select the compiler options in the hints file to avoid
mix-n-match ABI problems. I also added some additional commentary...
Patch against 5.003_97b follows:
p5p-msgid: yd8hghdjbk0.fsf@hoshi.engr.sgi.com
Chip Salzenberg [Thu, 6 Mar 1997 15:46:36 +0000]
Fix label on C<for(;;)> statement
Chip Salzenberg [Mon, 7 Apr 1997 00:00:00 +0000]
Fix C< $x=''; pos($x)=0; $x=~/\G$/ >
Chip Salzenberg [Wed, 9 Apr 1997 00:00:00 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Chip Salzenberg [Wed, 9 Apr 1997 00:00:00 +0000]
Fix for incorrect overloaded assignment
(this is the same change as commit
9de372454b482d4516b3f3c85b686af8cb18d211, but as applied)
Ilya Zakharevich [Fri, 11 Apr 1997 22:25:33 +0000]
Fix for incorrect overloaded assignment
Subject: Re: overloading problem
Jarkko Hietaniemi writes:
>
>
> Please proofread for me. Isn't what Chris is trying to do
>
> to get overloading to promote the unblessed scalar $c
> containing '2' to a Math::Complex blessed object?
>
> Please correct me if I am wrong but isn't this impossible?
>
> As there are only three possibilities for binops: normally ordered
> arguments, inverted arguments, modifying binop: the overloading will
> swap the honest Math::Complex $z as the first argument _and_ pass the
> third argument to minus() as undef (perldoc overload) and therefore
>
> a) the value of the result will be $z - $c, not $c - $z
> b) minus() will modify $z, not $c
>
> I may just too sleepy...
Looks like an overeager optimization... Try this:
p5p-msgid:
199704112225.SAA03482@monk.mps.ohio-state.edu
Chip Salzenberg [Mon, 7 Apr 1997 00:00:00 +0000]
[differences between cumulative patch application and perl-5.003_97c]
Perl 5 Porters [Mon, 7 Apr 1997 00:00:00 +0000]
[inseparable changes from match from perl-5.003_97b to perl-5.003_97c]
BUILD PROCESS
Subject: Fix syntax error in Configure comment(!)
From: Chip Salzenberg <chip@perl.com>
Files: Configure
Subject: For Solaris, if -DDEBUGGING, default to '-KPIC', not '-Kpic'
From: Chip Salzenberg <chip@perl.com>
Files: Configure
Subject: Fix usage of dXSUB_SYS, esp. in ExtUtils::Miniperl
From: Chip Salzenberg <chip@perl.com>
Files: dosish.h minimod.pl os2/os2ish.h plan9/plan9ish.h vms/vmsish.h
CORE LANGUAGE CHANGES
Subject: Refine setgroups() behavior of C<$)>
From: Chip Salzenberg <chip@perl.com>
Files: mg.c pod/perldelta.pod pod/perlvar.pod
Subject: Forbid -[Mm] on #! line
From: Chip Salzenberg <chip@perl.com>
Files: pod/perldelta.pod pod/perldiag.pod toke.c
CORE PORTABILITY
Subject: Special mkdir() for VMS
Date: Tue, 08 Apr 1997 12:33:56 -0400 (EDT)
From: Charles Bailey <bailey@hmivax.humgen.upenn.edu>
Files: dosish.h lib/ExtUtils/MM_Unix.pm lib/File/Path.pm os2/os2ish.h plan9/plan9ish.h pp_sys.c unixish.h vms/vms.c vms/vmsish.h
Msg-ID: 01IHGOXN6MZM0004K3@hmivax.humgen.upenn.edu
(applied based on p5p patch as commit
ebec1d4b2ca9c08d24035a369c7aa782aa058e66)
DOCUMENTATION
Subject: IO::Socket doc fix
Date: Tue, 08 Apr 1997 15:30:43 -0400
From: Roderick Schertler <roderick@argon.org>
Files: ext/IO/lib/IO/Socket.pm
Msg-ID: 28383.
860527843@eeyore.ibcinc.com
(applied based on p5p patch as commit
4a51304ce091cb6d1ccc9f25e11753bd7d985b32)
LIBRARY AND EXTENSIONS
Subject: Replace Class::Template with improved Class::Struct
From: Jim Miner <jfm@winternet.com>
Files: MANIFEST lib/Class/Struct.pm lib/Class/Template.pm lib/File/stat.pm lib/Net/hostent.pm lib/Net/netent.pm lib/Net/protoent.pm lib/Net/servent.pm lib/Time/gmtime.pm lib/Time/localtime.pm lib/Time/tm.pm lib/User/grent.pm lib/User/pwent.pm pod/perldelta.pod pod/perlfaq7.pod pod/perlmod.pod pod/perltoot.pod
Subject: MakeMaker pathname patch
Date: Wed, 9 Apr 1997 20:08:23 +0100
From: Nick Ing-Simmons <nik@tiuk.ti.com>
Files: lib/ExtUtils/MM_Unix.pm lib/ExtUtils/MakeMaker.pm
Msg-ID:
199704091908.UAA00877@ni-s.u-net.com
(applied based on p5p patch as commit
9cbbd68ff8edc7de96e3471de49538d0b2b98173)
Subject: Fix configuration of new socket
From: Chip Salzenberg <chip@perl.com>
Files: ext/IO/lib/IO/Socket.pm
Charles Bailey [Tue, 8 Apr 1997 16:33:56 +0000]
Special mkdir() for VMS
Subject: Re: Make failures in perl5.003_96 on AXP/VMS 6.2
Henrik Tougaard <ht.000@foa.dk> wrote:
>
> When I try to build Perl 5.003_96 on my AXP:
> DEC C V5.3-006 on OpenVMS Alpha V6.2-1H3
>
> I get the following error:
. . .
> Writing Descrip.MMS for Fcntl
> MMS
> %MMS-F-GWKNOPRN, There are no known sources for the current target
> [--.LIB].EXISTS.
> %MMS-F-ABORT, For target [.LIB]FCNTL.PM, CLI returned abort status:
> %X
10EE8064.
That's a bug introduced with the win32 support in _94 -- it assumes
dirname($dir) will return the name of $dir's parent, not $dir itself.
I've appended a fix for that, and for a problem with the DECCRTL
mkdir() (doesn't like trailing '/') that gets me to a clean build
for _94. complex.t fails -- runs out of memory after sucking down
around 70 MB, but I don't know whether it's a Perl bug or just
a pathological test.
I haven't got beyond _94 yet -- I've been swamped for the past couple
weeks, and it's going to get worse before it gets better :-/ -- but
I'll try to pick up the newer patches and test them as soon as I
can. In the meantime, reports from other folks, doc updates (especially
for the installation instructions), etc. are most welcome. :-)
p5p-msgid: 01IHGOXN6MZM0004K3@hmivax.humgen.upenn.edu
Roderick Schertler [Tue, 8 Apr 1997 19:30:43 +0000]
IO::Socket doc fix
p5p-msgid: 28383.
860527843@eeyore.ibcinc.com
Chip Salzenberg [Mon, 7 Apr 1997 00:00:00 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Nick Ing-Simmons [Wed, 9 Apr 1997 19:08:23 +0000]
MakeMaker pathname patch
Chip Salzenberg <chip@pobox.com> writes:
Can we have this please - it passes EXE_EXT to Makefile.
p5p-msgid:
199704091908.UAA00877@ni-s.u-net.com
Chip Salzenberg [Mon, 7 Apr 1997 00:00:00 +0000]
Accommodate CodeBuilder variant of Machten 4.0.3
(this is the same change as commit
f56dede6f0d67b2435681a318bccb04d4f017fbd, but as applied)
Dominic Dunlop [Tue, 8 Apr 1997 20:15:15 +0000]
Accommodate CodeBuilder variant of Machten 4.0.3
The following patch against _97b massages a couple of test files so that
CodeBuilder 1.0, a derivative of MachTen 4.0.3, passes all tests (except
lib/db-recno, due to an old DB library). The patch does three things:
1. Make op/stat.t test 35 look in /usr/bin for SUID files iff $^O has value
'machten'. (PowerBuilder has /bin directory, but it contains no SUID
files. Perl5 porters with reasonable memories may remember that the test
got retargetted at /bin only in January. Sigh. A better fix than this
quick hack is really required.)
2. Make op/stat.t test 39 check for value of $^O, succeeding if it's 'machten'.
(PowerBuilder and other MachTen variants lack /MachTen directory, but
all have a uname which says they're 'machten'.)
3. Amend io/fs.t test 25 so that it tests whether truncate can reduce the
length of a file attached to a filehandle, mirroring test 23's check of
whether truncate can reduce the length of a named file, rather than testing
whether truncate can extend an empty file attched to a filehandle. (See
discussion below.)
NOTE IN PARTICULAR POINT 3: CodeBuilder is distinguished from MachTen 4.0.3
in supporting a true Berkeley Fast File System as an alternative to MacOS'
incredibly slow Heirarchical File System. CodeBuilder's FFS code is
derived from 4.3BSD, and does not allow truncate() to extend a file's size.
The HFS code is derived from 4.4BSD, and does allow such extension. (The
man page for truncate(2) has not, as far as I can tell, changed in a long
time, and has reather slippery wording: it's not clear whether extension is
allowed, and the system errors one might expect for failed extension --
ENOSPC and others -- are not mentioned.) Looking at the io/fs.t, it seems
that a typo may have turned a check that the length of a file attached to a
handle can be reduced into a check that it can be extended. The patch
"fixes" the test to check for length reduction. If, on the other hand, it
should indeed be a test of extension (which, presumably, every other system
that supports truncate() passes) then io/fs.t should not be patched, and
CodeBuilder 1.0 pronounced buggy.
p5p-msgid: v
03020902af704d320f27@[194.51.248.88]
Jarkko Hietaniemi [Mon, 7 Apr 1997 00:00:00 +0000]
Fix typos in Math::Trig
Jarkko Hietaniemi [Wed, 9 Apr 1997 18:04:23 +0000]
Complex.pm: 0**0 sanity
private-msgid:
199704091804.VAA13930@alpha.hut.fi
Chip Salzenberg [Wed, 5 Mar 1997 19:48:16 +0000]
Improve IO::Handle docs; don't export _open_mode_string
Chip Salzenberg [Mon, 24 Mar 1997 15:51:51 +0000]
Fix assignment from magic SV that becomes a glob
Norbert Pueschel [Tue, 8 Apr 1997 20:01:45 +0000]
Fix dynamic loading (and argv[0]) under AmigaOS
private-msgid:
77724842@Armageddon.meb.uni-bonn.de
Chip Salzenberg [Fri, 4 Apr 1997 00:00:00 +0000]
[differences between cumulative patch application and perl-5.003_97b]
Perl 5 Porters [Fri, 4 Apr 1997 00:00:00 +0000]
[inseparable changes from match from perl-5.003_97a to perl-5.003_97b]
BUILD PROCESS
Subject: Don't suggest 'Configure -der' in config.sh comments
From: Chip Salzenberg <chip@perl.com>
Files: Configure
CORE LANGUAGE CHANGES
Subject: Make assignment to C<$)> call setgroups()
From: Chip Salzenberg <chip@perl.com>
Files: Configure config_H config_h.SH mg.c plan9/config.plan9 pod/perldelta.pod vms/config.vms win32/config.H win32/config.w32
Subject: Grandfather "$$<digit>" in strings
From: Chip Salzenberg <chip@perl.com>
Files: pod/perldiag.pod toke.c
Subject: Disconnect warn and die hooks _after_ object destruction
From: Chip Salzenberg <chip@perl.com>
Files: perl.c
Subject: Forbid recursive substitutions
From: Chip Salzenberg <chip@perl.com>
Files: cop.h pod/perldelta.pod pod/perldiag.pod pp_ctl.c pp_hot.c
DOCUMENTATION
Subject: Document required module versions
From: Chip Salzenberg <chip@perl.com>
Files: pod/perldelta.pod
LIBRARY AND EXTENSIONS
Subject: Updates to Math::Complex and Math::Trig
From: Jarkko Hietaniemi <Jarkko.Hietaniemi@cc.hut.fi>
Files: lib/Math/Complex.pm lib/Math/Trig.pm pod/perldelta.pod t/lib/complex.t
OTHER CORE CHANGES
Subject: length($') isn't
Date: Mon, 07 Apr 1997 03:30:44 -0400
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: mg.c
Msg-ID:
199704070730.DAA07310@aatma.engin.umich.edu
(applied based on p5p patch as commit
645a7cbb1f14932f058231f0a4f808b88ebe8703)
Subject: Fix obscure regex bug related to leading C<.*>
From: Chip Salzenberg <chip@perl.com>
Files: toke.c
Subject: Add warning for glob failure
From: Chip Salzenberg <chip@perl.com>
Files: pod/perldelta.pod pod/perldiag.pod pp_hot.c
Subject: Fix C<perl -V> in presence of local patches
From: Chip Salzenberg <chip@perl.com>
Files: perl.c
Gurusamy Sarathy [Mon, 7 Apr 1997 07:30:44 +0000]
length($') isn't
"foo" =~ /^./; print length $';
__END__
i
An ev0l typo that crept in via the 317th subversion. :-)
p5p-msgid:
199704070730.DAA07310@aatma.engin.umich.edu
Chip Salzenberg [Tue, 1 Apr 1997 20:54:23 +0000]
Make L<perltrap> refer to L<perldelta>
Doug MacEachern [Sat, 5 Apr 1997 15:24:43 +0000]
Document sample function perl_eval()
Tim, your comments have changed perl_eval() from a quick & dirty
example to something I'd like to see part of the Perl API, maybe
called perl_eval_pv though.
p5p-msgid:
199704051524.KAA06090@postman.osf.org
Gisle Aas [Sun, 6 Apr 1997 17:32:04 +0000]
Patch for 'perldoc -f'
private-msgid:
199704061732.TAA00353@bergen.sn.no
Nick Ing-Simmons [Sat, 5 Apr 1997 15:04:52 +0000]
Fix FindBin under Win32, and document success
private-msgid:
199704051504.QAA09507@ni-s.u-net.com
Signed-off-by: Nick Ing-Simmons <nik@tiuk.ti.com>
Chip Salzenberg [Fri, 4 Apr 1997 00:00:00 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Chip Salzenberg [Fri, 4 Apr 1997 00:00:00 +0000]
CGI->redirect patch
(this is the same change as commit
a3ec56f7f3704c7c711a382a2e558eb572cef265, but as applied)
Doug MacEachern [Sat, 5 Apr 1997 15:27:52 +0000]
CGI->redirect patch
Mike Stok <mike@stok.co.uk> wrote:
> I am having an odd problem with a redirect using apacha & mod perl.
>
> #!/usr/local/register/bin/perl -w
>
> use CGI::Switch;
>
> my $q = new CGI::Switch;
>
> $q->print ($q->redirect (-uri => 'http://vrooom.nis.newscorp.com:8008/',
> -nph => 1));
>
> as a "regular" cgi script works OK, but under mod_perl gets a "document
> contains no data" error out of the browser. When under mod_perl I have
> the code in .../register/code/boing ans the httpd.conf file says
[...]
> Is there some simple mistake I'm making? I'm using perl 5.003_95 and
> mod_perl 0.95_02 with apache 1.2b7 ... changing the versions fills me with
> terror as I'm < 24 hours away from a product roll out and the code works
> OK as CGI.
nuts, I should have done something about this a while ago. See, CGI
reads your scripts output, scanning headers and such. mod_perl does
not. This patch should makes things behave as expected.
p5p-msgid:
199704041732.MAA05896@postman.osf.org
private-msgid:
199704051527.KAA11280@postman.osf.org
Gurusamy Sarathy [Sun, 6 Apr 1997 04:31:11 +0000]
perlwin-97a_4: win32 environ fix
private-msgid:
199704060431.XAA23400@aatma.engin.umich.edu
Chip Salzenberg [Fri, 4 Apr 1997 00:00:00 +0000]
Use SSize_t for values of PerlIO_{read,write}
Chip Salzenberg [Wed, 2 Apr 1997 22:03:25 +0000]
[differences between cumulative patch application and perl-5.003_97a]
Perl 5 Porters [Wed, 2 Apr 1997 22:03:25 +0000]
[inseparable changes from match from perl-5.003_97 to perl-5.003_97a]
CORE PORTABILITY
Subject: Add support for Cygwin32 (GNU-Win32) -- very low impact
Date: Thu, 3 Apr 1997 09:21:17 +0100
From: John Cerney <j-cerney1@ti.com>
Files: MANIFEST README.cygwin32 cygwin32/cw32imp.h cygwin32/gcc2 cygwin32/ld2 cygwin32/perlgcc cygwin32/perlld ext/DynaLoader/dl_cygwin32.xs hints/cygwin32.sh perl.h pp_sys.c
Msg-ID:
199704030821.JAA08762@pluto.tiuk.ti.com
(applied based on p5p patch as commit
2a079e0090406b1b2e50643540f149206c9e9de8)
Subject: Win32 update (six patches)
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: MANIFEST README.win32 dosish.h t/io/fs.t t/io/tell.t t/lib/io_tell.t t/op/magic.t t/op/mkdir.t t/op/runlevel.t t/op/stat.t t/op/taint.t win32/Makefile win32/VC-2.0/pod.mak win32/makedef.pl win32/pod.mak win32/win32.c win32/win32.h win32/win32io.c win32/win32io.h win32/win32iop.h
LIBRARY AND EXTENSIONS
Subject: Math::Trig, based on (and from an author of) Math::Complex
From: Chip Salzenberg <chip@perl.com>
Files: MANIFEST lib/Math/Complex.pm lib/Math/Trig.pm pod/perldelta.pod t/lib/complex.t t/lib/trig.t
OTHER CORE CHANGES
Subject: Fix const-sub-related panic on C<sub foo { my $x; 0 } foo>
From: Chip Salzenberg <chip@perl.com>
Files: op.c
Subject: Fix warning for useless C<1..2>
From: Chip Salzenberg <chip@perl.com>
Files: op.c
Subject: Minor cleanups
Date: Thu, 03 Apr 1997 19:56:57 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: mg.c mg.h perl.c
Msg-ID:
199704040056.TAA22253@aatma.engin.umich.edu
(applied based on p5p patch as commit
609794497049cf42bdd2396c04cbb7728e10374d)
Subject: Eliminate unreliable warning with %SIG and strict refs
From: Chip Salzenberg <chip@perl.com>
Files: mg.c
Subject: Fix impossible test in vivification
From: Chip Salzenberg <chip@perl.com>
Files: mg.c
John Cerney [Thu, 3 Apr 1997 08:21:17 +0000]
Patch to Build Dynamic-Lib (DLL) version of perl using gnuwin32 b17.1
I have successfully built a dynamic-lib (dll) version of perl version 5.003_94
using the gnuwin32 tools on windows 95 and windows NT 3.51. This port builds
all extension libs for perl as DLLs.
A patch is attached to this message.
Detailed Instructions:
The following assumes you have the gnuwin32 (version b17.1) package installed
and configured on your system. See http://www.cygnus.com/misc/gnu-win32/ for
details on the gnuwin32 package.
1) Obtain perl5.003_94 (from www.perl.com or CPAN) and extract
to a directory on your system.
2) cd to the path where perl5.003_94 is installed. e.g, if you
installed to /perl5.003_94, then cd to /perl5.003_94.
3) Apply this patch:
patch -p1 < dllpatch
Note: If you have problems with the patch that comes with
the gnuwin32 package, (I have had problems getting it to apply
multiple patches in a single file) try the patch located
at http://www.simtel.net/pub/simtelnet/win95/prog/gpatch2b.zip.
Also, the files pp_sys.c and perl.h that the patch modifies must
be in unix format. If your extraction utility (like winzip) converts
to dos format, change the format of these files back before applying
the patch.
5) Modify the ld2 script
Change the PERLPATH variable to the location you extracted perl.
for example, if you extracted perl to /perl5.003_94, change so
the line looks like:
PERLPATH=/perl5.003_94
4) Copy the two scripts ld2, and gcc2 to a directory in your PATH
environment variable. For example, copy to /bin, assuming /bin is
in your PATH. (These two scripts ld2 and gcc2 are 'wrapper' scripts
that encapsulate the multiple-pass dll building steps used by gnuwin32
ld/gcc.)
5) Run the perl Configuration script as stated in the perl README file;
e.g.
sh Configure
select gnuwin32 at this prompt:
First time through, eh? I have some defaults handy for the following
systems:
.
.
.
Which of these apply, if any?
The defaults should be OK for everything else, except for the specific
pathnames for
the gnuwin32 libs, include files, installation dirs, etc on your system.
Note:
On windows 95, the configuration script only stops every other time
for responses from the command line. In this case you can manually edit
the gnuwin32.sh hint file for your paths, copy hints/gnuwin32.sh to
config.sh,
and run Configure non-interactively using sh Configure -d.
6) Do a make, as stated in the perl README file
7) Do a make test. Some test will fail, but you should get around a
83% OK result. (Most failures seem to be due to unix'ism that
don't apply for win32.)
8) Do a make install. This will fail about 1/2 of the way thru. It appears
that perl can't find itself when it forks because it cd's to another
directory during the install process. You get around this by invoking
the install script using a full pathname for perl. For example, if
perl is extracted to perl5.003_94, do a
'/perl5.003_94/perl installperl'. This should complete the install
process.
p5p-msgid:
199704030821.JAA08762@pluto.tiuk.ti.com
Gurusamy Sarathy [Fri, 4 Apr 1997 00:56:57 +0000]
Minor cleanups
This patch straightens out some code that used to be crooked,
avoids redundant SV allocs/frees, and makes a macro more
consistent. Nothing critical here.
The changes in ENV_FETCH code are untested, so vox VMS populi
invited.
p5p-msgid:
199704040056.TAA22253@aatma.engin.umich.edu
Nathan Torkington [Wed, 2 Apr 1997 20:34:15 +0000]
Pod style
Andy Dougherty [Sat, 29 Mar 1997 23:44:30 +0000]
Update INSTALL
Chip Salzenberg [Mon, 24 Feb 1997 15:24:03 +0000]
Make *dbm tests work with Win32
Chip Salzenberg [Tue, 18 Oct 1994 16:35:28 +0000]
Don't use $4 when it might be undef
Chip Salzenberg [Thu, 5 Sep 1996 21:14:21 +0000]
Limit @ISA to actual DBM in AnyDBM
Chip Salzenberg [Wed, 2 Apr 1997 22:03:25 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Chip Salzenberg [Wed, 2 Apr 1997 22:03:25 +0000]
CPAN & TRL-Gnu
(this is the same change as commit
8fe3829d7944eb627ee5360e65ca8f7afe76886d, but as applied)
Achim Bohnet [Fri, 4 Apr 1997 08:09:03 +0000]
CPAN & TRL-Gnu
p5p-msgid:
9704040809.AA26143@o09.rosat.mpe-garching.mpg.de
Chip Salzenberg [Fri, 29 Nov 1996 16:14:12 +0000]
Update AutoLoader and docs; support C<use AutoLoader 'AUTOLOAD'>
Signed-off-by: Chip Salzenberg <chip@perl.com>
Andy Dougherty [Fri, 4 Apr 1997 18:02:23 +0000]
Re: shared lib compilation problem with miniperl5.003_97
On Fri, 4 Apr 1997, Chip Salzenberg wrote:
> According to Olaf Seibert:
> > In this report I am using the shared perl library, libperl.so.3.97.
> >
> > When building miniperl, it is linked with libperl.so.3.97 instead of
> > -lperl. This slightly confuses NetBSD's shared loader. When miniperl
> > is run from a directory where libperl.so.3.97 is not present, it
> > will fail to start.
> >
> > Fix: I think this should do it: Change in the Makefile
> > LLIBPERL= $(LIBPERL)
> > to
> > LLIBPERL= -lperl
>
> Porters? I'm a bit out of my depth with this, since I'm not sure
> of what's portable with dynamic loading and what isn't.
My paranoid fear is the following: Suppose you already have
perl5.003_97 installed somewhere and it has a corresponding
libperl.so.3.97 installed in the appropriate directory. Now suppose
you're rebuiding perl5.003_97 (e.g. to test a patch or whatever) and
your new ./perl is linked with the moral equivalent of
LD_LIBRARY_PATH=`pwd`; export LD_LIBRARY_PATH
cc -o perl -R $archlib -lperl [...]
Now, when you're down in the t/ library running your tests, and miniperl
gets called, which libperl.so.3.97 do you get -- the new one found via
LD_LIBRARY_PATH or the old one found via the -R directive?
(This is very similar to the shared libperl/debugging problem discussed in
the INSTALL file.)
I don't think any solution is bulletproof. I suspect that the suggested
change probably won't make matters any worse, but I'm wary at this stage
(gee, that's a suprise from me:-)
Instead, I think the following should probably be safe:
p5p-msgid: Pine.SOL.3.95q.
970404124326.647K-100000@fractal.lafayette.edu
private-msgid: Pine.SOL.3.95q.
970404124326.647K-100000@fractal.lafayette.ed
Roderick Schertler [Thu, 3 Apr 1997 23:23:43 +0000]
runlevel is I32, not int
p5p-msgid: 2848.
860109823@eeyore.ibcinc.com
Norbert Pueschel [Thu, 3 Apr 1997 14:16:51 +0000]
AmigaOS update
private-msgid:
77724828@Armageddon.meb.uni-bonn.de
Chip Salzenberg [Wed, 2 Apr 1997 22:03:18 +0000]
Fix AUTOLOAD, or kill me
Chip Salzenberg [Tue, 1 Apr 1997 00:01:35 +0000]
[differences between cumulative patch application and perl-5.003_97]
Perl 5 Porters [Tue, 1 Apr 1997 00:01:35 +0000]
[inseparable changes from match from perl-5.003_96 to perl-5.003_97]
CORE LANGUAGE CHANGES
Subject: Reenable but deprecate inherited AUTOLOAD for plain funcs
From: Chip Salzenberg <chip@perl.com>
Files: ext/DynaLoader/DynaLoader.pm gv.c lib/Text/ParseWords.pm pod/perldelta.pod pod/perldiag.pod t/op/method.t
CORE PORTABILITY
Subject: Win32 update
Date: Wed, 02 Apr 1997 01:08:09 -0500
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: win32/VC-2.0/modules.mak win32/VC-2.0/perl.mak win32/VC- 2.0/perldll.mak win32/perl.mak
Msg-ID:
199704020608.BAA29538@aatma.engin.umich.edu
(applied based on p5p patch as commit
8d0ff1118aaee510902477e928a660803304346c)
DOCUMENTATION
Subject: Clean up some poddities, and make C<make html> work again
From: Chip Salzenberg <chip@perl.com>
Files: pod/Makefile pod/perldelta.pod pod/perldiag.pod pod/perlfaq8.pod pod/perlfunc.pod pod/perlop.pod pod/perltrap.pod
Subject: Eliminate pod warnings in libs
From: Chip Salzenberg <chip@perl.com>
Files: lib/CGI.pm lib/ExtUtils/Command.pm
LIBRARY AND EXTENSIONS
Subject: Eliminate warning in CGI.pm
From: Chip Salzenberg <chip@perl.com>
Files: lib/CGI.pm
OTHER CORE CHANGES
Subject: Introduce and use gv_fetchmethod_autoload()
From: Chip Salzenberg <chip@perl.com>
Files: global.sym gv.c pod/perlguts.pod proto.h universal.c
Gurusamy Sarathy [Wed, 2 Apr 1997 06:08:09 +0000]
Win32 update
The win32 make fails because it cannot find "camel.ico".
Even if I add a camel.ico stolen from elsewhere, the build
fails due to lack of "resource.h" referenced in "perl.rc"
(when using VC++ 2.0).
The following patch simply disables binding the icon resource
into perl.exe. (One can always associate a bare *.ico file
to any executable, so it's not like it *has* to be bound
into perl.exe when building it.)
p5p-msgid:
199704020608.BAA29538@aatma.engin.umich.edu
Chip Salzenberg [Tue, 1 Apr 1997 00:01:35 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Chip Salzenberg [Tue, 1 Apr 1997 00:01:35 +0000]
Fix MM doc's use of "SUPER::"
(this is the same change as commit
acce7d4e04d89207299003c3e80c69d50bc82069, but as applied)
Jim Avera [Tue, 1 Apr 1997 22:35:26 +0000]
Fix MM doc's use of "SUPER::"
Chip Salzenberg <chip@atlantic.net> wrote:
] According to Jim Avera:
] > Was there any resolution of the problem using SUPER:: with MakeMaker?
]
] Yes. Don't say "sub MY::foo {}"; say "package MY; sub foo {}".
] The current package is important for proper operation of SUPER::.
Thanks for your help. I appreciate it.
Here is a patch to fix the documentation (in 5.003_95).
p5p-msgid:
9704012235.AA07841@membrane.hal.com
Roderick Schertler [Wed, 2 Apr 1997 04:41:55 +0000]
Improve heuristics for pod2man titles
Subject: Re: Strange headers from perldoc
On Mon, 31 Mar 1997 16:02:59 +0100, "M.J.T. Guy" <mjtg@cus.cam.ac.uk> said:
>
> When I go "perldoc CPAN" (in perl5.003_94 as it happens), the header
> lines come out as
>
> ::home::mjtg::pUser Contr::home::mjtg::perl5.003_94::lib::CPAN(3)
Here's a fix for that. It's just more heuristics, so it isn't perfect.
In a related vein, this still leaves
Getopt::Long(3pUser Contributed Perl DocumentatiGetopt::Long(3pm)
in the page header on my system. "User Contributed Perl Documentation"
is just too long. Would anybody mind replacing this with something
shorter? Say
Getopt::Long(3pm) User Perl Docs Getopt::Long(3pm)
or
Getopt::Long(3pm) Wankel Rotary Engine Getopt::Long(3pm)
or even
Getopt::Long(3pm) Getopt::Long(3pm)
I'm partial the last of these, myself, but I'd be happy with anything
less than about 20 characters. Patch happily supplied if nobody
objects.
p5p-msgid: pzn2ri9gto.fsf@eeyore.ibcinc.com
Chip Salzenberg [Tue, 1 Apr 1997 00:01:35 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Chip Salzenberg [Tue, 1 Apr 1997 00:01:35 +0000]
Document eval vs. sub in Benchmark
(this is the same change as commit
446534a1e286d6fde0fd79424865d3cf1291546b, but as applied)
Hugo van der Sanden [Tue, 1 Apr 1997 22:31:55 +0000]
Document eval vs. sub in Benchmark
Subject: Re: Patch for Benchmark.pm
In <
9704011547.AA29906@toad.ig.co.uk>, Tim Bunce writes:
:Simple: calling functions in perl is expensive.
Yeah, I simply hadn't expected it to be *that* expensive.
:> - ? "sub { package $pack; my(\$_i)=$n; while (\$_i--){&\$c;} }"
:> + ? "sub { package $pack; my(\$_i)=$n; while (\$_i--){&\$c();} }"
:It's cheaper to _not_ add () so I'd recommend leaving it off.
I considered that, but felt it was more correct not to pass through the
parameters that were received. My new patch ducks it, by shifting @_
out before it gets there.
I also looked at having two caches for empty string/empty sub timings,
but was unable to get satisfactory results. I'll come back to that one,
but I don't think it is urgent for 5.004.
This patch is for the Benchmark.pm in _96: it repeats stuff from my
previous patch, but avoids stuff that was obsoleted by other changes
in _96.
p5p-msgid:
199704012231.XAA00225@crypt.compulink.co.uk
Tom Phoenix [Tue, 1 Apr 1997 05:10:14 +0000]
Tweaks to constant.pm
I've made a couple of (trivial) changes, in this compared to what was
distributed in _96. Patch available separately. Cape does not actually
enable wearer to fly.
Robin Barker [Tue, 1 Apr 1997 11:11:43 +0000]
Eliminate warnings in File::Basename
./perl -w t/lib/basename.t
gives some warnings.
p5p-msgid: 11173.
9704011111@tempest.cise.npl.co.uk
Jens T. Berger Thielemann [Tue, 1 Apr 1997 13:34:47 +0000]
Fix POSIX::raise()
[editor's note: Chip credited Jens with the fix, but the message
doesn't have a patch. *shrug*]
p5p-msgid: Pine.SUN.3.91.
970401153125.8053A-100000@holmenkollen.ifi.uio.no
Chip Salzenberg [Sat, 29 Mar 1997 23:46:06 +0000]
Update $VERSION of ExtUtils::Embed to reflect reality
Andreas Koenig [Fri, 7 Mar 1997 13:12:26 +0000]
Refresh ExtUtils::Manifest to 1.33
Andreas Koenig [Mon, 17 Feb 1997 23:59:13 +0000]
Refresh CPAN to 1.24
Chip Salzenberg [Sat, 29 Mar 1997 23:46:57 +0000]
Remove target before link() of perldiag.pod
Chip Salzenberg [Tue, 1 Apr 1997 00:01:35 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Chip Salzenberg [Tue, 1 Apr 1997 00:01:35 +0000]
Reduce memory footprint of literal strings
(this is the same change as commit
1bd69d1d0fa002def016e601cb71bfcd93600bd3, but as applied)
Ilya Zakharevich [Tue, 1 Apr 1997 16:34:37 +0000]
Reduce memory footprint of literal strings
Subject: Fix for memory allocation on 'string'
Currently qq/a/ takes 2/3 of memory of "a" or 'a'. Test with
> env PERL_DEBUG_MSTATS=2 perl -e '$#a=10000; $a[$i] = qq// while $i++ <10000'
Memory allocation statistics after compilation: (buckets 8..8192)
17552 free: 0 9 24 16 16 3 1 2 1 0 1
43888 used: 0 119 232 176 16 5 3 10 0 0 1
Total sbrk(): 61800. Odd ends: sbrk(): 360, malloc(): 0 bytes.
Memory allocation statistics after execution: (buckets 8..65536)
17136 free: 0 121 21 15 16 3 1 0 1 0 1 0 0 0
515344 used: 0 10119 235 177 16 5 3 250 0 0 1 0 0 1
Total sbrk(): 532840. Odd ends: sbrk(): 360, malloc(): 0 bytes.
> env PERL_DEBUG_MSTATS=2 perl -e '$#a=10000; $a[$i] = "a" while $i++ <10000'
Memory allocation statistics after compilation: (buckets 8..8192)
17520 free: 0 9 23 16 16 3 1 2 1 0 1
43920 used: 0 119 233 176 16 5 3 10 0 0 1
Total sbrk(): 61800. Odd ends: sbrk(): 360, malloc(): 0 bytes.
Memory allocation statistics after execution: (buckets 8..65536)
17616 free: 0 121 4 15 16 3 1 1 1 0 1 0 0 0
713520 used: 0 10119 10236 177 16 5 3 131 0 0 1 0 0 1
Total sbrk(): 731496. Odd ends: sbrk(): 360, malloc(): 0 bytes.
The following patch fixes it:
p5p-msgid: 1997Apr1.113438.1913905@hmivax.humgen.upenn.edu
Chip Salzenberg [Sat, 29 Mar 1997 23:48:07 +0000]
Don't use a completely empty macro parameter
Chip Salzenberg [Sun, 30 Mar 1997 03:38:21 +0000]
Improve definition of Sock_size_t
Chip Salzenberg [Mon, 31 Mar 1997 06:38:42 +0000]
Don't use setjmp() and longjmp() in complex exprs
Chip Salzenberg [Tue, 25 Mar 1997 19:04:34 +0000]
[differences between cumulative patch application and perl-5.003_96]
Perl 5 Porters [Tue, 25 Mar 1997 19:04:34 +0000]
[inseperable changes from patch from perl-5.003_95 to perl-5.003_86]
[editor's note: this commit was prepared manually so may differ in
minor ways to other inseperable changes commits]
CORE LANGUAGE CHANGES
Title: "Support $ENV{PERL5OPT}"
From: Chip Salzenberg
Files: perl.c pod/perldiag.pod pod/perldelta.pod pod/perlrun.pod
Title: "Implement void context, in which C<wantarray> is undef"
From: Chip Salzenberg
Files: cop.h doop.c dump.c global.sym gv.c op.c op.h perl.c
pod/perlcall.pod pod/perldelta.pod pod/perlfunc.pod
pod/perlguts.pod pod/perlsub.pod pp.c pp_ctl.c pp_hot.c
pp_sys.c proto.h
Title: "Don't look up &AUTOLOAD in @ISA when calling plain function"
From: Chip Salzenberg
Files: global.sym gv.c lib/Text/ParseWords.pm pod/perldelta.pod
pp_hot.c proto.h t/op/method.t
Title: "Allow closures to be constant subroutines"
From: Chip Salzenberg
Files: op.c
Title: "Make C<scalar(reverse)> mean C<scalar(reverse $_)>"
From: Chip Salzenberg
Files: pp.c
Title: "Fix lexical suicide from C<my $x = $x> in sub"
From: Chip Salzenberg
Files: op.c
Title: "Make "Unrecog. char." fatal, and update its doc"
From: Chip Salzenberg
Files: pod/perldiag.pod toke.c
CORE PORTABILITY
Title: "safefree() mismatch"
From: Roderick Schertler
Msg-ID: <21338.
859653381@eeyore.ibcinc.com>
Date: Sat, 29 Mar 1997 11:36:21 -0500
Files: util.c
(applied based on p5p patch as commit id
9b9b466fb02dc96c81439bafbb3b2da55238cfd2)
Title: "Win32 update (seven patches)"
From: Gurusamy Sarathy and Nick Ing-Simmons
Files: EXTERN.h MANIFEST win32/Makefile win32/perl.mak
win32/perl.rc win32/perldll.mak win32/makedef.pl
win32/modules.mak win32/win32io.c win32/bin/pl2bat.bat
OTHER CORE CHANGES
Title: "Report PERL* environment variables in -V and perlbug"
From: Chip Salzenberg
Files: perl.c utils/perlbug.PL
Title: "Typo in perl.c: Printing NO_EMBED for perl -V"
From: Gisle Aas
Msg-ID: <
199703301922.VAA13509@furubotn.sn.no>
Date: Sun, 30 Mar 1997 21:22:11 +0200
Files: perl.c
(applied based on p5p patch as commit id
b6c639e4b1912ad03b9b10ba9518d96bd0a6cfaf)
Title: "Don't let C<$var = $var> untaint $var"
From: Chip Salzenberg
Files: pp_hot.c pp_sys.c sv.h t/op/taint.t
Title: "Fix autoviv bug in C<my $x; ++$x->{KEY}>"
From: Chip Salzenberg
Files: pp_hot.c
Title: "Re: 5.004's new srand() default seed"
From: Hallvard B Furuseth
Msg-ID: <
199703302219.AAA20998@bombur2.uio.no>
Date: Mon, 31 Mar 1997 00:19:13 +0200 (MET DST)
Files: pp.c
(applied based on p5p patch as commit id
d7d933a26349f945f93b2f0dbf85b773d8ca3219)
Title: "Re: embedded perl and top_env problem "
From: Gurusamy Sarathy
Msg-ID: <
199703280031.TAA05711@aatma.engin.umich.edu>
Date: Thu, 27 Mar 1997 19:31:42 -0500
Files: gv.c interp.sym perl.c perl.h pp_ctl.c pp_sys.c scope.h util.c
(applied based on p5p patch as commit id
f289f7d2518e7a8a82114282e774adf50fa6ce85)
Title: "Define and use new macro: boolSV()"
From: Tim Bunce
Files: gv.c lib/ExtUtils/typemap os2/os2.c pp.c pp_hot.c pp_sys.c
sv.c sv.h universal.c vms/vms.c
Title: "Re: strict @F"
From: Hallvard B Furuseth
Msg-ID: <
199703252110.WAA16038@bombur2.uio.no>
Date: Tue, 25 Mar 1997 22:10:33 +0100 (MET)
Files: toke.c
(applied based on p5p patch as commit id
dfd44a5c8c8dd4c001c595debfe73d011a96d844)
Title: "Try harder to identify errors at EOF"
From: Chip Salzenberg
Files: toke.c
Title: "Minor string change in toke.c: 'bareword'"
From: lvirden@cas.org
Msg-ID: <1997Mar27.130247.1911552@hmivax.humgen.upenn.edu>
Date: Thu, 27 Mar 1997 13:02:46 -0500 (EST)
Files: toke.c
(applied based on p5p patch as commit id
9b56c8f8085a9e773ad87c6b3c1d0b5e39dbc348)
Title: "Improve diagnostic on \r in program text"
From: Chip Salzenberg
Files: pod/perldiag.pod toke.c
Title: "Make Sock_size_t typedef work right"
From: Chip Salzenberg
Files: perl.h pp_sys.c
LIBRARY AND EXTENSIONS
Title: "New module constant.pm"
From: Tom Phoenix
Files: MANIFEST lib/constant.pm op.c pp.c t/pragma/constant.t
Title: "Remove chat2"
From: Chip Salzenberg
Files: MANIFEST lib/chat2.inter lib/chat2.pl
Title: "Include CGI.pm 2.32"
From: Chip Salzenberg
Files: MANIFEST eg/cgi/* lib/CGI.pm lib/CGI/Apache.pm
lib/CGI/Carp.pm lib/CGI/Fast.pm lib/CGI/Push.pm
lib/CGI/Switch.pm
UTILITIES
Title: "Tom C's Pod::Html and html tools, as of 30 March 97"
From: Chip Salzenberg
Files: MANIFEST installhtml lib/Pod/Html.pm pod/pod2html.PL
Title: "Fix path bugs in installhtml"
From: Robin Barker <rmb1@cise.npl.co.uk>
Msg-ID: <3180.
9703270906@tempest.cise.npl.co.uk>
Date: Thu, 27 Mar 97 09:06:14 GMT
Files: installhtml
Title: "Make perlbug say that it's only for core Perl bugs"
From: Chip Salzenberg
Files: utils/perlbug.PL
DOCUMENTATION
Title: "Document autouse and constant; update diagnostics"
From: Chip Salzenberg
Files: pod/perldelta.pod
Title: "Suggest to upgraders that they try '-w' again"
From: Hallvard B Furuseth
Msg-ID: <
199703251901.UAA15982@bombur2.uio.no>
Date: Tue, 25 Mar 1997 20:01:26 +0100 (MET)
Files: pod/perldelta.pod
(applied based on p5p patch as commit id
4176c059b9ba6b022e99c44270434a5c3e415b73)
Title: "Improve and update documentation of constant subs"
From: Tom Phoenix <rootbeer@teleport.com>
Msg-ID: <Pine.GSO.3.96.
970331122546.14185C-100000@kelly.teleport.com>
Date: Mon, 31 Mar 1997 13:05:54 -0800 (PST)
Files: pod/perlsub.pod
Title: "Improve documentation of C<return>"
From: Chip Salzenberg
Files: pod/perlfunc.pod pod/perlsub.pod
Title: "perlfunc.pod patch"
From: Gisle Aas
Msg-ID: <
199703262159.WAA17531@furubotn.sn.no>
Date: Wed, 26 Mar 1997 22:59:23 +0100
Files: pod/perlfunc.pod
(applied based on p5p patch as commit id
35a731fcbcd7860eb497d6598f3f77b8746319c4)
Title: "Use 'while (defined($x = <>)) {}', per <gnat@frii.com>"
From: Chip Salzenberg
Files: configpm lib/Term/Cap.pm perlsh pod/perlipc.pod pod/perlop.pod
pod/perlsub.pod pod/perlsyn.pod pod/perltrap.pod
pod/perlvar.pod win32/bin/search.bat
Title: "Document and test C<%> behavior with negative operands"
From: Chip Salzenberg
Files: pod/perlop.pod t/op/arith.t
Title: "Update docs on $]"
From: Chip Salzenberg
Files: pod/perlvar.pod
Title: "perlvar.pod patch"
From: Gisle Aas
Msg-ID: <
199703261254.NAA10237@bergen.sn.no>
Date: Wed, 26 Mar 1997 13:54:00 +0100
Files: pod/perlvar.pod
(applied based on p5p patch as commit id
0aa182cb0caa3829032904b9754807b1b7418509)
Title: "Fix example of C<or> vs. C<||>"
From: Chip Salzenberg
Files: pod/perlsyn.pod
Title: "Pod usage and spelling patch"
From: Larry W. Virden
Files: pod/*.pod
Title: "Pod updates"
From: "Cary D. Renzema" <caryr@mxim.com>
Msg-ID: <
199703262353.PAA01819@macs.mxim.com>
Date: Wed, 26 Mar 1997 15:53:22 -0800 (PST)
Files: pod/*.pod
(applied based on p5p patch as commit id
5695b28edc67a3f45e8a0f25755d07afef3660ac)
Cary D. Renzema [Wed, 26 Mar 1997 23:53:22 +0000]
Pod updates
Here are some fixes for the pod files.
p5p-msgid: <
199703262353.PAA01819@macs.mxim.com>
Gisle Aas [Wed, 26 Mar 1997 12:54:00 +0000]
perlvar.pod patch
p5p-msgid:
199703261254.NAA10237@bergen.sn.no
Chip Salzenberg [Tue, 25 Mar 1997 19:04:34 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Gisle Aas [Wed, 26 Mar 1997 21:59:23 +0000]
perlfunc.pod patch
This patch contains various minor corrections and improvements to the
perl5.003_95 perlfunc POD text:
p5p-msgid:
199703262159.WAA17531@furubotn.sn.no
Chip Salzenberg [Tue, 25 Mar 1997 19:04:34 +0000]
Patch for perl.pod
(this is the same change as commit
69cddaa00596e831c0492189df41823d75a1b069, but as applied)
William Middleton [Wed, 26 Mar 1997 23:05:39 +0000]
Patch for perl.pod
This didn't make it into 95.
p5p-msgid:
199703262305.PAA13121@ducks
Hallvard B Furuseth [Tue, 25 Mar 1997 19:01:26 +0000]
Suggest to upgraders that they try '-w' again
Tom Christiansen wrote:
>>-w is removed from a lot of installed scripts, to
>>get rid of annoying warnings about legitimate code.
>
> Hm... I kinda think this is a bad idea. If there are too
> many warnings, something should be fixed. Historically,
> -w has at time been too noisy, and we've fixed it.
Right. Let's add a note somewhere (perlrun? perldelta? INSTALL?):
p5p-msgid:
199703251901.UAA15982@bombur2.uio.no
Chip Salzenberg [Tue, 25 Mar 1997 19:04:34 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Larry W. Virden [Thu, 27 Mar 1997 18:02:46 +0000]
Minor string change in toke.c: 'bareword'
The only place I found in all of perl 5.003095 that used the phrase
"Bare word" instead of "bareword" or "Bareword" was here:
p5p-msgid: 1997Mar27.130247.1911552@hmivax.humgen.upenn.edu
Chip Salzenberg [Tue, 25 Mar 1997 19:04:34 +0000]
INSTALL-1.11
(this is the same change as commit
a5d126c22eb526701c899be27a05a7d0d93dff97, but as applied)
Andy Dougherty [Wed, 26 Mar 1997 19:27:52 +0000]
INSTALL-1.11
On March 25, I wrote:
> I'll try to take various comments into account and eliminate unnecessary
> markup in INSTALL. (I will, however, leave in what I consider to be
> necessary or useful markup.)
Here's a patch to bring you version 1.11 of the INSTALL file. This patch
is relative to the version in 5.003_95.
By far the biggest part of the patch is removing unnecessary markup in the
file. There actually wasn't all that much anyway, but most of it wasn't
necessary for clarity, so I just removed it. There are now just 13 uses
of C<> and B<>. (These too are debatable, but I have no interest in
debating them. I've already decided to keep them for now.)
I've included Chip's suggestion about 'splain and diagnostics.pm and added
a little more info about the pod format.
There are also some minor rewordings here and there, all aiming to enhance
clarity. I hope it didn't regress instead :-)
At this point, I don't see any reason to include a separate INSTALL.txt
version in the distribution. If we want to
mv INSTALL INSTALL.pod
I won't argue much against it.
p5p-msgid: Pine.SOL.3.95q.
970326140905.10178A-100000@fractal.lafayette.edu
Hallvard B Furuseth [Tue, 25 Mar 1997 21:10:33 +0000]
Re: strict @F
According to Chip Salzenberg:
> sprintf( tmpbuf1, "@F=split('%s');", splitstr );
Oh, that reminds me: Splits like perl -F"/" and perl -F",'" fail.
Of course, these might be considered user errors since they conflict
with the -F doc. However, the -F doc is incorrect anyway: It says that
the pattern will be quoted unless it is *surrounded* by the delimiter.
Perl uses quotes if it *starts* with the delimiter. Which is sometimes
better because it allows options: -F/foo/i.
Anyway, here is a fix. 1st part allows things like `-F/' according to
the doc. 2nd part, if you want it, (attempts to) allow -F",'" in
conflict with the doc, which implies -F",'" is an error.
BTW, note that it's too late to obey the current doc exactly.
That would forbid options (-F/foo/i) or expressions (-F'"" + $i++').
Currently, these work - and might be in use somewhere.
p5p-msgid:
199703252110.WAA16038@bombur2.uio.no
Randy J. Ray [Thu, 27 Mar 1997 21:17:38 +0000]
Tiny doc fix for AutoSplit.pm
Seems that the C<.al> construct by itself causes pod2man to lose about half of
the line, which confuses the explanation of the argument in question:
p5p-msgid: rjray-
9702272117.AA001223633@snakepit.ecte.uswc.uswest.com
Gurusamy Sarathy [Fri, 28 Mar 1997 00:31:42 +0000]
Re: embedded perl and top_env problem
On Mon, 24 Mar 1997 17:29:29 EST, Ken Fox wrote:
>Gurusamy Sarathy wrote:
>> >> Ken Fox wrote:
>> >> > The trouble with die happens in the longjmp to top_env ...
>> Testcase?
>
>Here's a good example that demonstrates both of my longjmp related
>problems. I'm using 5.003_94 on Solaris 2.5.1 (more info at
>bottom). I think that the perl_call_* API is being used correctly.
>
>---------------------------------------- BEGIN crash.c
>#include <EXTERN.h>
>#include <perl.h>
>static PerlInterpreter *my_perl;
>
>int call_sub(SV *sub)
>{
> int result = -1;
> int count;
> dSP;
>
> ENTER;
> SAVETMPS;
>
> PUSHMARK(sp);
> XPUSHs(sv_2mortal(newSViv(1)));
> PUTBACK;
> count = perl_call_sv(sub, G_SCALAR);
> SPAGAIN;
> if (count == 1) result = POPi;
> PUTBACK;
>
> FREETMPS;
> LEAVE;
> return result;
>}
>
>int main(int argc, char *argv[], char *envp[])
>{
> char *perl_args[] = { 0, "-e",
> "sub ok { $_[0] + 1; } sub crash { die 'crash\n'; }", 0 };
> my_perl = perl_alloc();
> perl_construct(my_perl);
> perl_parse(my_perl, 0, 3, perl_args, 0);
> perl_run(my_perl);
>
> /* this call works fine -- no error */
> printf(" sub ok: return = %d\n", call_sub((SV *)perl_get_cv("ok", FALSE)));
> /* this call eventually inokes die() which mangles the C stack with long jump */
> printf("sub crash: return = %d\n", call_sub((SV *)perl_get_cv("crash", FALSE)));
> /* this call is bogus but perl mangles the C stack with long jump trying to
> tell me about it. */
> printf(" sv_undef: return = %d\n", call_sub(&sv_undef));
> perl_destruct(my_perl);
> perl_free(my_perl);
> return 0;
>}
>---------------------------------------- END crash.c
>
>I don't expect either of these cases to trap the error and go on -- I'd
>have used G_EVAL to do that. What I do expect is that the C stack isn't
>scrambled when the error occurs -- that makes it virtually impossible to
>catch in a debugger:
Here's a patch for the above problem, which is symptomatic of larger
problems with perl_call_*() calls that happen outside perl_run() or
perl_parse(). Perl invokes longjmp() without checking if an associated
setjmp() exists. This is likely to cause coredumps galore for all the
perl embedfellows out there.
Note the size of this patch is mostly due to the conversion of the
DOCATCH() business to macros in order to give it a semblance of
order. It also does away with redundant calls to setjmp() (the
:restart branch in perl_call_sv()), and uses the C stack instead of
Copy().
I finished this patch yesterday, and gave it a day with my production
embeded app, so I'm fairly sure it don't have no bugs. :-)
p5p-msgid:
199703280031.TAA05711@aatma.engin.umich.edu
Chip Salzenberg [Tue, 25 Mar 1997 19:04:34 +0000]
[dummy merge]
This merge exists so that the p5p version of the patch and the applied
version are both in the history
Hallvard B Furuseth [Sun, 30 Mar 1997 22:19:13 +0000]
Re: 5.004's new srand() default seed
In the remote past, Roderick Schertler wrote:
> I posted a message to clpm asking for comments on Perl's new srand()
> default seed and Dean Inada replied. Here are his observations. I'm
> just a conduit, would somebody who knows what they're talking about
> please step in?
Sorry to be late:
I believe I'm the one who inserted the new code. I browse clpm very
infrequently - and skip large parts of p5p too, for that matter.
I'll freely admit it's not particularly well tuned. Since I don't know
much about randomness, anyone who do could do a better job, and I
suggested (on p5p) that someone might give it a try. My change was just
to grab a few more garbage values (pointer addresses, time & pid) and
multipliers that shold at least never produce worse results than the
original code.
The multipliers
- are prime numbers, just in case that makes a difference:-)
- have few 1 bits at the beginning in binary, to distribute values
varying in a small range "not worse than the old version did",
or something like that. I don't quite remember.
If you improve it, just remember:
- *every* input value (time, pid & so on) may vary within a very narrow
range and/or with a constant multiplier in some instances - or not
vary at all.
- cast things to a "large enough" unsigned and to avoid overflow
exception and/or warning on some compilers. And don't trust a
variable/function to be unsigned just because some standard says
that it should be.
>> Using ^ here seems pretty silly. It again invites identical seeds
>> every 1000001 microseconds. A much more natural seed would seem to be
>>
>> tv_sec*1000000 + tv_usec
>>
>> Which at least will never repeat on different ticks.
Unless int is small, which gives faster wraparound.
>> But (...) some round tv_usec to multiples of 10000 microseconds,
Ah, yes. That's why I didn't multiply tv_sec with anything.
Better fix: Replace 1000000 above with some uneven larger number.
>> it would still be useful to mix in a getpid().
Which I did.
>>> seed ^= ( ( 269 * (U32)getpid())
>>> ^ (26107 * (U32)&when)
>>> ^ (73819 * (U32)stack_sp));
>>
>> Since you're using primes here, why not use the addition operator from
>> the same field that the primes are in, which would generate a group
>> the size of the product of those primes for avoiding repetitions?
Fine. Someone said xor, but not with any arguments that I can rember.
>> Are you still using rand(3), rather than the better random(3)? If so,
>> there may be the additional issue that small changes in the seed tend
>> to produce small changes in the sequence. In that case, something
>> like seed*32769 (i.e. seed + (seed<<15)) may help. (though a prime
>> like 32771 might be better.)
INSTALL suggests -Drand=random -Dsrand=srandom if one wants larger
period. Which means the period could be anything. However,
#if RANDBITS > 32 ... #else #if RANDBITS > 16 ... #else ...
should allow us to tune this for the most common seed sizes.
Anyway, what should be used is a *real* hash function which spreads the
effect of every bit over a whole 1<<RANDBITS, so truncating to 32, 48 or
16 bits will all work. Multiplication with primes is not good enough,
because changes in high bits do not affect low bits of the seed.
However, I can't do that without checking some book, I don't know what
code to avoid which could cause recurring patterns instead...
Anyway, here is a starting point - slightly improved from your version:
[included code block applied as patch - ed]
Oh, also note:
Some time ago, Chip Salzenberg wrote:
>According to Fabien TASSIN:
>>> warning(1412): destination type of cast is too small to
>>> hold all pointers: truncation possible
>>> ^ (26107 * (U32)&when)
>>> ^
>>
>> this one is interesting for all 64bit OSs..
>
> It's on purpose. The value of "&when" is just a presumably large,
> difficult-to-predict value; converting it to U32 is the Right Thing,
> even on 64-bit machines.
Well,
(U32)(unsigned_with_same_size_as_pointers_t)&when
wouldn't hurt, if the latter type exists:-) And the same for
(U32)stack_sp, of course.
p5p-msgid:
199703302219.AAA20998@bombur2.uio.no
Chip Salzenberg [Tue, 25 Mar 1997 19:04:34 +0000]
Patch for Benchmark.pm
(this is the same change as commit
3f1bea595935e4179e5648faacfa5b549f2d7e03, but as applied)
Hugo van der Sanden [Sat, 29 Mar 1997 15:04:32 +0000]
Patch for Benchmark.pm
This patch is a cleanup for the Benchmark module. It documents all the
stuff that wasn't, including my recent patch to allow code references;
it removes the old perl-comment docs that duplicate the POD; it fixes
some minor bugs (mostly of the '$arg ||= $default' instead of
'$arg = $default unless defined $arg' variety) and generally tidies
things up a bit.
Let me know if any of this causes problems,
p5p-msgid:
199703291504.PAA01596@crypt.compulink.co.uk
Signed-off-by: Hugo van der Sanden <hv@crypt.compulink.co.uk>
Gisle Aas [Sun, 30 Mar 1997 19:22:11 +0000]
Typo in perl.c: Printing NO_EMBED for perl -V
p5p-msgid:
199703301922.VAA13509@furubotn.sn.no