This is a live mirror of the Perl 5 development currently hosted at
16 years agoregmatch(): make IFMATCH use PUSH_STACK rather than fake recursion
Dave Mitchell [Wed, 19 Apr 2006 13:56:07 +0000 (13:56 +0000)]
regmatch(): make IFMATCH use PUSH_STACK rather than fake recursion

p4raw-id: //depot/perl@27903

16 years agoUpgrade to Test::Harness 2.57_05
Rafael Garcia-Suarez [Wed, 19 Apr 2006 11:38:11 +0000 (11:38 +0000)]
Upgrade to Test::Harness 2.57_05

p4raw-id: //depot/perl@27902

16 years agonewCONSTSUB needs to be robust in case CopFILE is NULL.
Nicholas Clark [Wed, 19 Apr 2006 11:20:08 +0000 (11:20 +0000)]
newCONSTSUB needs to be robust in case CopFILE is NULL.

p4raw-id: //depot/perl@27901

16 years agoOops. Need a macro to convert cv_ckproto() to cv_ckproto_len().
Nicholas Clark [Wed, 19 Apr 2006 09:58:19 +0000 (09:58 +0000)]
Oops. Need a macro to convert cv_ckproto() to cv_ckproto_len().

p4raw-id: //depot/perl@27900

16 years agoThere's a macro to get ${^RE_DEBUG_FLAGS} when debugging,
Rafael Garcia-Suarez [Wed, 19 Apr 2006 09:34:48 +0000 (09:34 +0000)]
There's a macro to get ${^RE_DEBUG_FLAGS} when debugging,
so use it (and this fixes a valgrind memory access error)

p4raw-id: //depot/perl@27899

16 years agoAvoid temporarily writing over the prototype when reporting an error.
Nicholas Clark [Wed, 19 Apr 2006 09:22:03 +0000 (09:22 +0000)]
Avoid temporarily writing over the prototype when reporting an error.
(And beef up the relevant tests to really check that it all works).

p4raw-id: //depot/perl@27898

16 years agoReplace some Copy() by Move() calls, because valgrind reports
Rafael Garcia-Suarez [Wed, 19 Apr 2006 09:09:14 +0000 (09:09 +0000)]
Replace some Copy() by Move() calls, because valgrind reports
we can have overlapping memory areas here

p4raw-id: //depot/perl@27897

16 years agoCalling cv_undef() on the CV created by newCONSTSUB() would leak like
Nicholas Clark [Wed, 19 Apr 2006 08:42:18 +0000 (08:42 +0000)]
Calling cv_undef() on the CV created by newCONSTSUB() would leak like
a Jumblie's preferred maritime craft. To free CvFILE for this case,
take advantage of the 0 length prototype that will also be there,
and hang it from the prototype. To do this properly means changing
code to actually pay attention to SvCUR() on prototypes. It turns out
that we always know the length of the prototype string, so this may
be faster. Certainly, it's a memory saving (even ignoring the leak).

p4raw-id: //depot/perl@27896

16 years agoFix compilation of microperl, which doesn't have INT_MAX.
Nicholas Clark [Wed, 19 Apr 2006 07:55:18 +0000 (07:55 +0000)]
Fix compilation of microperl, which doesn't have INT_MAX.

p4raw-id: //depot/perl@27895

16 years agoRevert 27869 at Jarkko's request.
Nicholas Clark [Tue, 18 Apr 2006 19:52:19 +0000 (19:52 +0000)]
Revert 27869 at Jarkko's request.

p4raw-id: //depot/perl@27894

16 years agoregmatch: fix a || vs | typo in CACHEsayYES and add a test from Hugo.
Dave Mitchell [Tue, 18 Apr 2006 17:03:15 +0000 (17:03 +0000)]
regmatch: fix a || vs | typo in CACHEsayYES and add a test from Hugo.
Also defer altering the cache bit until CACHEsayYES/NO is called

p4raw-id: //depot/perl@27893

16 years agoAdd a TODO regarding merging the win32 and wince codebases.
Steve Peters [Tue, 18 Apr 2006 16:47:58 +0000 (16:47 +0000)]
Add a TODO regarding merging the win32 and wince codebases.

p4raw-id: //depot/perl@27892

16 years agoWhen checking whether perl is built with -g in optimisation
Rafael Garcia-Suarez [Tue, 18 Apr 2006 16:05:15 +0000 (16:05 +0000)]
When checking whether perl is built with -g in optimisation
flags, use a more tolerant regexp, because we can now have
things like '-O2 -g'.

p4raw-id: //depot/perl@27891

16 years agoExpand "am I hot or not" into a more general "Profile Perl" section.
Nicholas Clark [Tue, 18 Apr 2006 16:03:10 +0000 (16:03 +0000)]
Expand "am I hot or not" into a more general "Profile Perl" section.

p4raw-id: //depot/perl@27890

16 years agoA fix to change #27845 to get it to compile with -DPERL_MAD.
Steve Peters [Tue, 18 Apr 2006 15:47:48 +0000 (15:47 +0000)]
A fix to change #27845 to get it to compile with -DPERL_MAD.
p4raw-link: @27845 on //depot/perl: 4199688e3d699f53e17448d3bad6e93e57d49dcc

p4raw-id: //depot/perl@27889

16 years agowin32/Makefile changes for Windows 64 bit
Jan Dubois [Mon, 17 Apr 2006 01:48:34 +0000 (18:48 -0700)]
win32/Makefile changes for Windows 64 bit
From: "Jan Dubois" <>
Message-ID: <036401c661fb$bc7a1200$2217a8c0@candy>

and make similar changes to win32/
and delete a spurious extra line from that file

p4raw-id: //depot/perl@27888

16 years agoAddition to README.riscos suggested by Nicholas
Rafael Garcia-Suarez [Tue, 18 Apr 2006 14:02:23 +0000 (14:02 +0000)]
Addition to README.riscos suggested by Nicholas

p4raw-id: //depot/perl@27887

16 years agoNote that Rafael has done the first cut of state variables.
Nicholas Clark [Tue, 18 Apr 2006 13:18:27 +0000 (13:18 +0000)]
Note that Rafael has done the first cut of state variables.
Document that UTF-8 cleansing the tokeniser and the pads is TODO.

p4raw-id: //depot/perl@27886

16 years agoRelocatable @INC and parallel builds pretty much work now.
Nicholas Clark [Tue, 18 Apr 2006 13:10:35 +0000 (13:10 +0000)]
Relocatable @INC and parallel builds pretty much work now.

p4raw-id: //depot/perl@27885

16 years agoSupport compiling for RISC OS
Alex Waugh [Mon, 17 Apr 2006 00:14:26 +0000 (01:14 +0100)]
Support compiling for RISC OS
Message-ID: <>

p4raw-id: //depot/perl@27884

16 years agoCoverity still thinks that there is a route through do_vop that can
Nicholas Clark [Tue, 18 Apr 2006 11:18:12 +0000 (11:18 +0000)]
Coverity still thinks that there is a route through do_vop that can
leak resources. I believe that it's spotted that you can skip all the
cases in the switch. Plug that hole.

p4raw-id: //depot/perl@27883

16 years agoCoverity insists that if we deference a pointer without checking, and
Nicholas Clark [Tue, 18 Apr 2006 10:54:15 +0000 (10:54 +0000)]
Coverity insists that if we deference a pointer without checking, and
subsequently check that same pointer before deferencing it, something
in our code or our logic is bogus. So assert() that it's safe the
first time and remove the second check.

p4raw-id: //depot/perl@27882

16 years agoFix an error, spotted by Tim Bunce.
Nicholas Clark [Mon, 17 Apr 2006 20:50:34 +0000 (20:50 +0000)]
Fix an error, spotted by Tim Bunce.

p4raw-id: //depot/perl@27881

16 years agoCoderefs in @INC are done and documented.
Nicholas Clark [Mon, 17 Apr 2006 20:41:00 +0000 (20:41 +0000)]
Coderefs in @INC are done and documented.

p4raw-id: //depot/perl@27880

16 years agoDocument all the return values that code references in @INC can return.
Nicholas Clark [Mon, 17 Apr 2006 20:35:52 +0000 (20:35 +0000)]
Document all the return values that code references in @INC can return.

p4raw-id: //depot/perl@27879

16 years agoPatch to fix RT #31227: perldoc -f, -q ignores extra arguments with no notice.
Steve Peters [Mon, 17 Apr 2006 20:05:03 +0000 (20:05 +0000)]
Patch to fix RT #31227: perldoc -f, -q ignores extra arguments with no notice.
Never made it to the mailing list though, so, was never found.  Patch
previously provided to the Pod-Perldoc CPAN RT queue.

p4raw-id: //depot/perl@27878

16 years agoCoverity is upset about a signed int in ext/Filter/Util/Call/Call.xs,
Nicholas Clark [Mon, 17 Apr 2006 19:12:23 +0000 (19:12 +0000)]
Coverity is upset about a signed int in ext/Filter/Util/Call/Call.xs,
but the real problem is down in Perl_filter_read() in toke.c.

p4raw-id: //depot/perl@27877

16 years agoCoverity is a persistent beast. Hot on the tails of fixing one leak,
Nicholas Clark [Mon, 17 Apr 2006 18:30:59 +0000 (18:30 +0000)]
Coverity is a persistent beast. Hot on the tails of fixing one leak,
it notices a slightly earlier leak.
(Which also suggests that marking bugs as RESOLVED isn't a great plan,
as it's not clear whether that calls off the dogs of war. I'd much
prefer it to be forced to scan again, and give a positve "all clear"
(or more accurately "nowt wrong I can see with that"))

p4raw-id: //depot/perl@27876

16 years agoTurn on UTF8 cache assertions with -Ca
Nicholas Clark [Mon, 17 Apr 2006 16:52:54 +0000 (16:52 +0000)]
Turn on UTF8 cache assertions with -Ca

p4raw-id: //depot/perl@27875

16 years agoOops. Change 27826 had an error in the definition of BGET_PADOFFSET().
Nicholas Clark [Mon, 17 Apr 2006 16:52:07 +0000 (16:52 +0000)]
Oops. Change 27826 had an error in the definition of BGET_PADOFFSET().

p4raw-id: //depot/perl@27874

16 years agoUpgrade to
Steve Peters [Mon, 17 Apr 2006 16:49:51 +0000 (16:49 +0000)]
Upgrade to

p4raw-id: //depot/perl@27873

16 years agoNote that PVIOs probably aren't worth shrinking. Note 3 possible
Nicholas Clark [Mon, 17 Apr 2006 15:33:21 +0000 (15:33 +0000)]
Note that PVIOs probably aren't worth shrinking. Note 3 possible
subflags for -C if the two Unicode TODOs are done.

p4raw-id: //depot/perl@27872

16 years agoRe: [PATCH] update to pp_complement() via Coverity
SADAHIRO Tomoyuki [Sun, 16 Apr 2006 18:45:37 +0000 (03:45 +0900)]
Re: [PATCH] update to pp_complement() via Coverity
Message-Id: <>
Date: Sun, 16 Apr 2006 18:45:37 +0900

Subject: Re: [PATCH] update to pp_complement() via Coverity
From: SADAHIRO Tomoyuki <>
Message-Id: <>
Date: Mon, 17 Apr 2006 23:06:21 +0900

p4raw-id: //depot/perl@27871

16 years agoIn Change 27764 I forgot to at PL_hints_mutex to the list of symbols to
Nicholas Clark [Mon, 17 Apr 2006 14:48:13 +0000 (14:48 +0000)]
In Change 27764 I forgot to at PL_hints_mutex to the list of symbols to
exclude when not compiling with ithreads. It would be good to automate
the processing of this.

p4raw-id: //depot/perl@27870

16 years ago(tentative) regcomp.c: try convincing Coverity that data ptr in study_chunk is non...
Jarkko Hietaniemi [Sun, 16 Apr 2006 12:26:48 +0000 (15:26 +0300)]
(tentative) regcomp.c: try convincing Coverity that data ptr in study_chunk is non-NULL when needed
Message-Id: <>
Date: Sun, 16 Apr 2006 12:26:48 +0300 (EEST)

p4raw-id: //depot/perl@27869

16 years agoNote in av_store() that S_regclass relies on being able to pass NULL.
Nicholas Clark [Mon, 17 Apr 2006 13:15:34 +0000 (13:15 +0000)]
Note in av_store() that S_regclass relies on being able to pass NULL.

p4raw-id: //depot/perl@27868

16 years agoAdd assertions to cover cases where the Coverity scanner thinks we
Nicholas Clark [Mon, 17 Apr 2006 13:14:55 +0000 (13:14 +0000)]
Add assertions to cover cases where the Coverity scanner thinks we
could are deferencing a NULL pointer, but we think it missed something
it should have been capable of figuring out.

p4raw-id: //depot/perl@27867

16 years agoAdd Dave's explainations of why certain pointers are always non-NULL,
Nicholas Clark [Mon, 17 Apr 2006 12:48:43 +0000 (12:48 +0000)]
Add Dave's explainations of why certain pointers are always non-NULL,
and assert() that it is true.

p4raw-id: //depot/perl@27866

16 years agofix cygwin build
Yitzchak Scott-Thoennes [Sun, 16 Apr 2006 18:05:20 +0000 (11:05 -0700)]
fix cygwin build
Message-ID: <>

p4raw-id: //depot/perl@27865

16 years agoSupport for -DDEBUGGING and its alias -DEBUGGING
H.Merijn Brand [Mon, 17 Apr 2006 12:18:07 +0000 (12:18 +0000)]
Support for -DDEBUGGING and its alias -DEBUGGING

p4raw-id: //depot/perl@27863

16 years agoRevert change 27818, as change 27853 fixes the real bug.
Nicholas Clark [Mon, 17 Apr 2006 12:07:23 +0000 (12:07 +0000)]
Revert change 27818, as change 27853 fixes the real bug.

p4raw-id: //depot/perl@27862

16 years agoCompress::Zlib
Paul Marquess [Mon, 17 Apr 2006 10:58:30 +0000 (11:58 +0100)]
From: "Paul Marquess" <>
Message-ID: <019b01c66205$7dc7ea50$>

p4raw-id: //depot/perl@27861

16 years agopp_ctl.c caching
Andy Lester [Sun, 16 Apr 2006 23:40:35 +0000 (18:40 -0500)]
pp_ctl.c caching
Message-ID: <>
Date: Sun, 16 Apr 2006 23:40:35 -0500

p4raw-id: //depot/perl@27860

16 years agodooop.c: the strong asserts in Sv* macros could cause memory leakage -- move the...
Jarkko Hietaniemi [Mon, 17 Apr 2006 10:19:37 +0000 (13:19 +0300)]
dooop.c: the strong asserts in Sv* macros could cause memory leakage -- move the macro calls earlier (Coverity CID 84)
Message-Id: <>
Date: Mon, 17 Apr 2006 10:19:37 +0300 (EEST)

p4raw-id: //depot/perl@27859

16 years agoRevert 27856.
Nicholas Clark [Mon, 17 Apr 2006 10:28:40 +0000 (10:28 +0000)]
Revert 27856.

p4raw-id: //depot/perl@27857

16 years agoThe danger of piping an mbox to patch is that it contains more than
Jarkko Hietaniemi [Sun, 16 Apr 2006 11:19:25 +0000 (14:19 +0300)]
The danger of piping an mbox to patch is that it contains more than
one message. So both:

Subject: [PATCH] doop.c: one more code path where memory could leak (Coverity)
Message-Id: <>
Date: Sun, 16 Apr 2006 11:19:25 +0300 (EEST)


Subject: [PATCH] doop.c: one more code path where memory could leak (Coverity)
From: (Jarkko Hietaniemi)
Message-Id: <>
Date: Sun, 16 Apr 2006 11:19:25 +0300 (EEST)

p4raw-id: //depot/perl@27856

16 years agogeneralize the 'continue on success' mechanism of deferred REs
Dave Mitchell [Sun, 16 Apr 2006 23:30:36 +0000 (23:30 +0000)]
generalize the 'continue on success' mechanism of deferred REs

p4raw-id: //depot/perl@27855

16 years agoabstract regmatch slab access with SLAB_FIRST and SLAB_LAST macros
Dave Mitchell [Sun, 16 Apr 2006 23:12:31 +0000 (23:12 +0000)]
abstract regmatch slab access with SLAB_FIRST and SLAB_LAST macros

p4raw-id: //depot/perl@27854

16 years agostop PL_op and PL_curpad referring to different pads at start of doeval
Dave Mitchell [Sun, 16 Apr 2006 23:07:13 +0000 (23:07 +0000)]
stop PL_op and PL_curpad referring to different pads at start of doeval
(this could make find_uninit_var do Bad Things)

p4raw-id: //depot/perl@27853

16 years agoFix bug introduced with change 27841. (len + 1, not just len).
Nicholas Clark [Sun, 16 Apr 2006 21:44:59 +0000 (21:44 +0000)]
Fix bug introduced with change 27841. (len + 1, not just len).

p4raw-id: //depot/perl@27852

16 years agoCoverity is flagging a potential problem because it sees a check for
Nicholas Clark [Sun, 16 Apr 2006 19:06:19 +0000 (19:06 +0000)]
Coverity is flagging a potential problem because it sees a check for
NULL and assumes that this means that the variable host could be
NULL. It can't, and the check added in change 13291 was a little bit
more than the minimal solution needed for the bug report
[ID 20011126.148]
Hence remove the NULL check.

p4raw-id: //depot/perl@27851

16 years agoop.c patch, 2nd version
Andy Lester [Fri, 14 Apr 2006 23:29:24 +0000 (18:29 -0500)]
op.c patch, 2nd version
Message-ID: <>
Date: Fri, 14 Apr 2006 23:29:24 -0500

p4raw-id: //depot/perl@27850

16 years agoA scalar reference returned from a coderef in @INC is treated as the
Nicholas Clark [Sun, 16 Apr 2006 15:04:36 +0000 (15:04 +0000)]
A scalar reference returned from a coderef in @INC is treated as the
initial "content" of the file. When it is exhausted input is taken
from a real file handle, or a generator sub, if either exists.

p4raw-id: //depot/perl@27849

16 years agoremove some cruft from
Jan Dubois [Sun, 16 Apr 2006 02:05:00 +0000 (19:05 -0700)]
remove some cruft from
From: "Jan Dubois" <>
Message-ID: <022e01c66134$d7a8dec0$2217a8c0@candy>

p4raw-id: //depot/perl@27848

16 years agotestcase for change #27832
Jan Dubois [Sun, 16 Apr 2006 00:57:00 +0000 (17:57 -0700)]
testcase for change #27832
From: "Jan Dubois" <>
Message-ID: <022a01c6612b$575cb7e0$2217a8c0@candy>

p4raw-id: //depot/perl@27847

16 years agoStray pod/perlapi.pod change found after a regen.
Steve Peters [Sun, 16 Apr 2006 13:44:47 +0000 (13:44 +0000)]
Stray pod/perlapi.pod change found after a regen.

p4raw-id: //depot/perl@27846

16 years agodump.c patch redux
Andy Lester [Sun, 16 Apr 2006 00:29:36 +0000 (19:29 -0500)]
dump.c patch redux
Message-ID: <>

p4raw-id: //depot/perl@27845

16 years agoPerl_do_vop can profitably use Perl_sv_usepvn_flags, as it has
Nicholas Clark [Sun, 16 Apr 2006 13:25:18 +0000 (13:25 +0000)]
Perl_do_vop can profitably use Perl_sv_usepvn_flags, as it has
allocated space for an initialised a trailing NUL.

p4raw-id: //depot/perl@27843

16 years agoIn Perl_sv_usepvn_flags, assert() that the caller has RTFM.
Nicholas Clark [Sun, 16 Apr 2006 12:06:57 +0000 (12:06 +0000)]
In Perl_sv_usepvn_flags, assert() that the caller has RTFM.

p4raw-id: //depot/perl@27842

16 years agoProvide a new flag for sv_usepvn_flags, SV_HAS_TRAILING_NUL, which
Nicholas Clark [Sun, 16 Apr 2006 11:35:38 +0000 (11:35 +0000)]
Provide a new flag for sv_usepvn_flags, SV_HAS_TRAILING_NUL, which
signals that the buffer passed in is already well-formed for use as
SvPVX (i.e. it is followed by a trailing NUL), and hence the realloc()
to add a NUL can be skipped.

p4raw-id: //depot/perl@27841

16 years agoMerge sv_usepvn and sv_usepvn_mg into sv_usepvn_flags. "Promote" the
Nicholas Clark [Sun, 16 Apr 2006 11:03:28 +0000 (11:03 +0000)]
Merge sv_usepvn and sv_usepvn_mg into sv_usepvn_flags. "Promote" the
other two to mathoms.c

p4raw-id: //depot/perl@27840

16 years agoIn Perl_sv_usepvn(), force a move under DEBUGGING to shake out caller
Nicholas Clark [Sun, 16 Apr 2006 10:37:46 +0000 (10:37 +0000)]
In Perl_sv_usepvn(), force a move under DEBUGGING to shake out caller

p4raw-id: //depot/perl@27839

16 years agoFix htmllink.t to cater for the case where perladmin isn't an empty
Nicholas Clark [Sun, 16 Apr 2006 10:37:04 +0000 (10:37 +0000)]
Fix htmllink.t to cater for the case where perladmin isn't an empty

p4raw-id: //depot/perl@27838

16 years agoCoverity notes that we might be dereferencing fgv before a check that
Nicholas Clark [Sun, 16 Apr 2006 09:36:18 +0000 (09:36 +0000)]
Coverity notes that we might be dereferencing fgv before a check that
it's not NULL. In fact, the code ordering meant that one "if (fgv)"
would always be true. So fix this.

p4raw-id: //depot/perl@27837

16 years agoupdate to pp_complement() via Coverity
Andy Lester [Sun, 16 Apr 2006 00:14:23 +0000 (19:14 -0500)]
update to pp_complement() via Coverity
Message-ID: <>

p4raw-id: //depot/perl@27836

16 years agoclean up hv_assert()
Andy Lester [Sat, 15 Apr 2006 23:18:27 +0000 (18:18 -0500)]
clean up hv_assert()
Message-ID: <>

p4raw-id: //depot/perl@27835

16 years agoRemoved unused var in a macro
Andy Lester [Sat, 15 Apr 2006 23:32:53 +0000 (18:32 -0500)]
Removed unused var in a macro
Message-ID: <>

p4raw-id: //depot/perl@27834

16 years agoChange anchor generation in Pod::Html for "=item item 2"
Jan Dubois [Fri, 14 Apr 2006 13:13:20 +0000 (06:13 -0700)]
Change anchor generation in Pod::Html for "=item item 2"
From: "Jan Dubois" <>
Message-ID: <017a01c65fff$dfd0f370$2217a8c0@candy>

p4raw-id: //depot/perl@27833

16 years agoPod::Html::depod() doesn't work correctly for multi-line strings
Jan Dubois [Mon, 10 Apr 2006 15:32:23 +0000 (08:32 -0700)]
Pod::Html::depod() doesn't work correctly for multi-line strings
From: "Jan Dubois" <>
Message-ID: <017b01c65cee$a2f5fe00$6062a8c0@candy>

p4raw-id: //depot/perl@27832

16 years agoMissing part of change 25186
Jan Dubois [Thu, 13 Apr 2006 18:26:29 +0000 (11:26 -0700)]
Missing part of change 25186
From: "Jan Dubois" <>
Message-ID: <009401c65f62$74fded70$2217a8c0@candy>

p4raw-id: //depot/perl@27831

16 years agoMissing part of change 25676
Jan Dubois [Thu, 13 Apr 2006 18:19:26 +0000 (11:19 -0700)]
Missing part of change 25676
From: "Jan Dubois" <>
Message-ID: <009001c65f61$78866d60$2217a8c0@candy>

p4raw-id: //depot/perl@27830

16 years agoHandle null io in leavewrite (not possible?) (Coverity) [Sat, 15 Apr 2006 14:13:41 +0000 (10:13 -0400)]
Handle null io in leavewrite (not possible?) (Coverity)
Message-ID: <>
Date: Sat, 15 Apr 2006 14:13:41 -0400 (EDT)

p4raw-id: //depot/perl@27829

16 years agoPotential (?) memory leak in Storable.xs (Coverity) [Sat, 15 Apr 2006 13:54:10 +0000 (09:54 -0400)]
Potential (?) memory leak in Storable.xs (Coverity)
Message-ID: <>
Date: Sat, 15 Apr 2006 13:54:10 -0400 (EDT)

p4raw-id: //depot/perl@27828

16 years agoTeach Perl_do_sv_dump how to cope with IOs that have bogus things in
Nicholas Clark [Sat, 15 Apr 2006 22:44:30 +0000 (22:44 +0000)]
Teach Perl_do_sv_dump how to cope with IOs that have bogus things in
GV slots. (Which source filters are prone to do to them).

p4raw-id: //depot/perl@27827

16 years agoCoverity was getting upset about an assignment from a function
Nicholas Clark [Sat, 15 Apr 2006 21:50:12 +0000 (21:50 +0000)]
Coverity was getting upset about an assignment from a function
returning int to a U8 variable. Curiously it was only getting upset
about the first of many.
However, we are doing NO ERROR CHECKING on whether we read in the
requested number of bytes of bytecode. All except BGET_op_tr_array
will now croak on a short read.

p4raw-id: //depot/perl@27826

16 years agoCoverity reports that Storable can potentially cause a NULL pointer
Nicholas Clark [Sat, 15 Apr 2006 21:43:13 +0000 (21:43 +0000)]
Coverity reports that Storable can potentially cause a NULL pointer
dereference while iterating a hash. This should never happen unless
the hash lies about how many keys it has, so croak if a fib is spotted.

p4raw-id: //depot/perl@27825

16 years agoCoverity notes that resource are leaked in the unfinished and never
Nicholas Clark [Sat, 15 Apr 2006 21:11:44 +0000 (21:11 +0000)]
Coverity notes that resource are leaked in the unfinished and never
called function _utf8_to_bytes.

p4raw-id: //depot/perl@27824

16 years agoCoverity correctly reports that gv might (just) be NULL. So don't
Nicholas Clark [Sat, 15 Apr 2006 20:55:20 +0000 (20:55 +0000)]
Coverity correctly reports that gv might (just) be NULL. So don't
derefernece it if it is.

p4raw-id: //depot/perl@27823

16 years agoUpdate the assertion to a croak "Out of range special SV number"
Nicholas Clark [Sat, 15 Apr 2006 20:54:44 +0000 (20:54 +0000)]
Update the assertion to a croak "Out of range special SV number"
to give ByteLoader more meaningful failure diagnostics.

p4raw-id: //depot/perl@27822

16 years agoI believe that it makes little sense for the simple user filters
Nicholas Clark [Sat, 15 Apr 2006 20:19:22 +0000 (20:19 +0000)]
I believe that it makes little sense for the simple user filters
provided by coderefs to be run in block mode. Hence always read from
the upstream filter in line mode, and always call the user's filter
with 1 line.

p4raw-id: //depot/perl@27821

16 years agoFix a bug - the introduction of the caching code means that we should
Nicholas Clark [Sat, 15 Apr 2006 20:01:58 +0000 (20:01 +0000)]
Fix a bug - the introduction of the caching code means that we should
initialise the SV upstream after it.
assert that filter_sub is always non-null now.

p4raw-id: //depot/perl@27820

16 years agoAugment the user filter caching code so that if the user filter returns
Nicholas Clark [Sat, 15 Apr 2006 19:37:32 +0000 (19:37 +0000)]
Augment the user filter caching code so that if the user filter returns
multiple lines, only one line at a time is returned.
Rename the variable len to status, as it is the status value.

p4raw-id: //depot/perl@27819

16 years agoDeep in the bowels of creating new and exciting bugs, I managed to
Nicholas Clark [Sat, 15 Apr 2006 19:17:51 +0000 (19:17 +0000)]
Deep in the bowels of creating new and exciting bugs, I managed to
segfault the uninitialised value reporting code. This protects against
the segfault.

p4raw-id: //depot/perl@27818

16 years ago$foo .= $bar doesn't warn if $foo is undefined, so simplify code.
Nicholas Clark [Sat, 15 Apr 2006 18:08:04 +0000 (18:08 +0000)]
$foo .= $bar doesn't warn if $foo is undefined, so simplify code.

p4raw-id: //depot/perl@27817

16 years agoIf the downstream caller wants block mode, and we're in line mode,
Nicholas Clark [Sat, 15 Apr 2006 18:05:12 +0000 (18:05 +0000)]
If the downstream caller wants block mode, and we're in line mode,
then don't return more bytes than they asked for. Hold bytes over
until next time if necessary.

p4raw-id: //depot/perl@27816

16 years agoEliminate the filter_child_proc hack from pp_require.
Nicholas Clark [Sat, 15 Apr 2006 17:00:54 +0000 (17:00 +0000)]
Eliminate the filter_child_proc hack from pp_require.

p4raw-id: //depot/perl@27815

16 years agoIf you return void from a filter subroutine, the caller's status is
Nicholas Clark [Sat, 15 Apr 2006 16:43:22 +0000 (16:43 +0000)]
If you return void from a filter subroutine, the caller's status is
used. If not, your last statement is the return value, and if it keeps
being +ve you'll never hit EOF.
The probably should be a sanity check for this in toke.c, but I'm not
sure how.

p4raw-id: //depot/perl@27814

16 years agoTests for having multiple pipes open simultaneously.
Nicholas Clark [Sat, 15 Apr 2006 16:42:23 +0000 (16:42 +0000)]
Tests for having multiple pipes open simultaneously.
(See comment added in change 3771 about this apparently being buggy)

p4raw-id: //depot/perl@27813

16 years agoAdd more tests for the builtin source filter implementation, and fix
Nicholas Clark [Sat, 15 Apr 2006 13:45:13 +0000 (13:45 +0000)]
Add more tests for the builtin source filter implementation, and fix
two bugs - it would loop infinitely if data were already in the read
buffer, and it would process those data twice.

p4raw-id: //depot/perl@27812

16 years agoAdd a test for source filters returned from code references in @INC.
Nicholas Clark [Sat, 15 Apr 2006 11:59:26 +0000 (11:59 +0000)]
Add a test for source filters returned from code references in @INC.

p4raw-id: //depot/perl@27811

16 years agoBump the expect file count in readdir.t. We keep writing more tests.
Nicholas Clark [Sat, 15 Apr 2006 11:22:29 +0000 (11:22 +0000)]
Bump the expect file count in readdir.t. We keep writing more tests.

p4raw-id: //depot/perl@27810

16 years agoperlio.c: layer data might be allocated and unused (Coverity)
Jarkko Hietaniemi [Sat, 15 Apr 2006 11:24:17 +0000 (14:24 +0300)]
perlio.c: layer data might be allocated and unused (Coverity)
Message-Id: <>

(with a correction)

p4raw-id: //depot/perl@27809

16 years agoFix bug in prime_env_iter where the terms of a comparison were reversed
juna [Fri, 24 Mar 2006 13:52:41 +0000 (05:52 -0800)]
Fix bug in prime_env_iter where the terms of a comparison were reversed
so we thought we didn't have a logical name table when we did.  Reported as:
Subject: LWP::Simple crashes on VMSperl
From: "juna" <>
Newsgroups: comp.os.vms,comp.lang.perl.misc
Message-ID: <>

p4raw-id: //depot/perl@27808

16 years agoHonor READALL privilege in cando_by_name (from Scott
Craig A. Berry [Sat, 15 Apr 2006 00:45:26 +0000 (00:45 +0000)]
Honor READALL privilege in cando_by_name (from Scott
Lepage of HP OpenVMS Engineering)

p4raw-id: //depot/perl@27807

16 years agoDon't die after SS$_NOPRIV in Perl_vmssetenv, courtesy
Craig A. Berry [Sat, 15 Apr 2006 00:42:41 +0000 (00:42 +0000)]
Don't die after SS$_NOPRIV in Perl_vmssetenv, courtesy
of Scott Lepage at HP.

p4raw-id: //depot/perl@27806

16 years agoChange SAVECOPWARNINGS(c) to SAVECOMPILEWARNINGS() - it's only used to
Nicholas Clark [Fri, 14 Apr 2006 20:44:27 +0000 (20:44 +0000)]
Change SAVECOPWARNINGS(c) to SAVECOMPILEWARNINGS() - it's only used to
save the warnings on PL_compiling, so constraining its use to what we
can test seems to make sense. Particularly as testing Perl_ss_dup is

p4raw-id: //depot/perl@27805

16 years agoIn the description of require, clarify the file handle return and why
Nicholas Clark [Fri, 14 Apr 2006 19:44:34 +0000 (19:44 +0000)]
In the description of require, clarify the file handle return and why
C<INC> must be qualified.

p4raw-id: //depot/perl@27804

16 years ago S_glob_2inpuv() did not check if lenp was NULL. Oops.
Nicholas Clark [Fri, 14 Apr 2006 16:43:03 +0000 (16:43 +0000)]
 S_glob_2inpuv() did not check if lenp was NULL. Oops.

p4raw-id: //depot/perl@27803

16 years agoReplace explict "/dev/null" with BIT_BUCKET, which varies by platform.
Nicholas Clark [Fri, 14 Apr 2006 16:18:30 +0000 (16:18 +0000)]
Replace explict "/dev/null" with BIT_BUCKET, which varies by platform.

p4raw-id: //depot/perl@27802

16 years agodoop.c: (Coverity) found a bug but not quite what Coverity thought it did (try valgri...
Jarkko Hietaniemi [Thu, 13 Apr 2006 19:20:46 +0000 (22:20 +0300)]
doop.c: (Coverity) found a bug but not quite what Coverity thought it did (try valgrind on the new bop.t without the doop.c patch)
Message-Id: <>

p4raw-id: //depot/perl@27801