platform/upstream/perl.git
13 years ago[perl #92432] Storable::nfreeze shouldn't stringify ints
Sam Kimbrel [Tue, 21 Jun 2011 05:24:42 +0000 (22:24 -0700)]
[perl #92432] Storable::nfreeze shouldn't stringify ints

Storable::nfreeze's integer size check doesn't work correctly:

Using nfreeze to store an int larger than one byte produces a
frozen representation that thaws into a stringified integer, without
my having done string operations on the scalar beforehand.

I've confirmed this bug with the three versions I had available to me:
5.8.9 on 64-bit CentOS 4, 5.12.1 on 64-bit OS X 10.6, and
5.14.0 on 64-bit Debian squeeze.

The constants involved in the comparisons get created as 32-bit integers,
which wrap around and cause the comparison to yield true when it shouldn't.

This patch casts the constants before using them, which should make this
port correctly to 64-bit architectures. Running tests on a 64-bit Debian
host shows no problems.

13 years agoIn pod/buildtoc, use abs_from_top() to generate pathnames.
Nicholas Clark [Tue, 21 Jun 2011 15:00:52 +0000 (17:00 +0200)]
In pod/buildtoc, use abs_from_top() to generate pathnames.

88fb56ecc95f23db used 'pod/perldelta.pod' instead of abs_from_top(), and broke
the build on Win32, which runs buildtoc from the win32 directory.

13 years agoupdate Time-HiRes to CPAN version 1.9724
Zefram [Tue, 21 Jun 2011 13:52:32 +0000 (14:52 +0100)]
update Time-HiRes to CPAN version 1.9724

- Correct XS parameter list, and therefore prototype, for
  unimplemented-on-this-platform version of clock_nanosleep()
  [rt.cpan.org #68700].
- Declare package variables with "our" rather than "use vars".
- Corresponding to "our" usage, check for minimum Perl version
  5.006.
- Declare module dependencies.

- Remove $ENV{PERL_CORE} logic from test suite, which is no
  longer desired in the core.
- Convert test suite to use Test::More.
- Factor out watchdog code from test suite.
- In test suite, be consistent about using fully-qualified form
  of function names.
- Divide test suite into feature-specific scripts.
- Make ualarm timing test less vulnerable to delay-induced false
  failure, from Dave Mitchell.

13 years agoupdate Math-Complex to CPAN version 1.58
Zefram [Tue, 21 Jun 2011 13:37:37 +0000 (14:37 +0100)]
update Math-Complex to CPAN version 1.58

* Declare package variables with "our" rather than "use vars".

* Corresponding to "our" usage, check for minimum Perl version
  5.006.

* Remove $ENV{PERL_CORE} logic from test suite, which is no
  longer desired in the core.

* In test suite, remove obsolete and now-incomplete handling of
  unavailability of Test::More.

* Declare module dependencies.

13 years agoupdate release schedule document
David Golden [Tue, 21 Jun 2011 14:50:33 +0000 (10:50 -0400)]
update release schedule document

13 years agoperlunicode: Narrow verabitm lines so don't wrap
Karl Williamson [Mon, 20 Jun 2011 19:35:38 +0000 (13:35 -0600)]
perlunicode: Narrow verabitm lines so don't wrap

For 80 columns, this collection of spacing changes keeps all
lines in this pod from wrapping.

13 years agopodcheck.t: sort --add_link output
Karl Williamson [Mon, 20 Jun 2011 01:56:41 +0000 (19:56 -0600)]
podcheck.t: sort --add_link output

The recently added --add_link option just appended lines to the end of
the data base file.  While this works, it means that the next time the
db is regen'd, that they will move around and show up in difference
listings unrelated to the original patch, thus potentially confusing
people.

13 years agopodcheck.t: Reduce F<> message false positives
Karl Williamson [Sun, 19 Jun 2011 19:12:18 +0000 (13:12 -0600)]
podcheck.t: Reduce F<> message false positives

podcheck looks for things that might be file path references which
are enclosed in C<> instead of F<>.  But there are some things that
aren't paths that have slashes in them, like "origin/blead"  This
adds some more of these.

13 years agopodcheck.t: White-space only changes
Karl Williamson [Sun, 19 Jun 2011 19:11:25 +0000 (13:11 -0600)]
podcheck.t: White-space only changes

13 years agopodcheck: Reduce fals positives for L<> message
Karl Williamson [Sun, 19 Jun 2011 19:06:22 +0000 (13:06 -0600)]
podcheck: Reduce fals positives for L<> message

podcheck looks for things like "See C<INSTALL>" and flags them as
perhaps L<> should have been used instead.  It was giving false
positives for things like "if you do x, you should see C<foo>".  This
catches those.

13 years agopodcheck: Fix skip upstream cpan
Karl Williamson [Sun, 19 Jun 2011 18:48:51 +0000 (12:48 -0600)]
podcheck: Fix skip upstream cpan

Normally upstream cpan modules are not pod checked, but in the
one case where two had the same name, an error was generated
nonetheless.

13 years agopodcheck.t: Fewer false positives for L<>
Karl Williamson [Sun, 19 Jun 2011 16:20:32 +0000 (10:20 -0600)]
podcheck.t: Fewer false positives for L<>

If there is a F<foo/bar> and a file named bar in the directory foo
exists, then assume that is what was meant, instead of raising
the possibility that L<> was meant.

13 years agopodcheck.t: Suppress all L<> messages for config.pod
Karl Williamson [Sun, 19 Jun 2011 16:12:11 +0000 (10:12 -0600)]
podcheck.t: Suppress all L<> messages for config.pod

config.pod is a generated file that just adds C<> around all-caps words.
Until such time as it is made smarter to use L<> for links instead,
just suppress the messages that L<> might be better.

13 years agoFile::Find pod: fix link issue
Karl Williamson [Sat, 18 Jun 2011 20:34:55 +0000 (14:34 -0600)]
File::Find pod: fix link issue

13 years agoREADME.macosx: Change C<> into F<>
Karl Williamson [Sat, 18 Jun 2011 20:26:08 +0000 (14:26 -0600)]
README.macosx: Change C<> into F<>

13 years agoperlapi: fix broken link, from sv.c
Karl Williamson [Sat, 18 Jun 2011 20:06:32 +0000 (14:06 -0600)]
perlapi: fix broken link, from sv.c

13 years agoREADME.ce: Change some C<> into F<>
Karl Williamson [Sat, 18 Jun 2011 20:03:17 +0000 (14:03 -0600)]
README.ce: Change some C<> into F<>

13 years agoperlcygwin: Fix broken link
Karl Williamson [Sat, 18 Jun 2011 19:54:56 +0000 (13:54 -0600)]
perlcygwin: Fix broken link

13 years agoperlfunc: Fix some link issues
Karl Williamson [Sat, 18 Jun 2011 19:51:31 +0000 (13:51 -0600)]
perlfunc: Fix some link issues

13 years agoperlhack: Change some C<> into F<>
Karl Williamson [Sat, 18 Jun 2011 19:41:14 +0000 (13:41 -0600)]
perlhack: Change some C<> into F<>

13 years agoperlhaiku: Change some C<> into F<>
Karl Williamson [Sat, 18 Jun 2011 19:39:32 +0000 (13:39 -0600)]
perlhaiku: Change some C<> into F<>

13 years agomake_patchnum.pl: Change some C<> into F<>
Karl Williamson [Sat, 18 Jun 2011 19:37:20 +0000 (13:37 -0600)]
make_patchnum.pl: Change some C<> into F<>

13 years agoperltodo: Change some C<> into F<>
Karl Williamson [Sat, 18 Jun 2011 19:32:33 +0000 (13:32 -0600)]
perltodo: Change some C<> into F<>

13 years agoperlrun: Fix some link issues
Karl Williamson [Sat, 18 Jun 2011 17:03:00 +0000 (11:03 -0600)]
perlrun: Fix some link issues

13 years agoperlunifaq: Use L<> to actual link instead of C<>
Karl Williamson [Sat, 18 Jun 2011 16:59:44 +0000 (10:59 -0600)]
perlunifaq: Use L<> to actual link instead of C<>

13 years agoperlxs: Fix broken link
Karl Williamson [Sat, 18 Jun 2011 16:57:22 +0000 (10:57 -0600)]
perlxs: Fix broken link

13 years agopodcheck.t: Fix typo
Karl Williamson [Sat, 18 Jun 2011 16:51:30 +0000 (10:51 -0600)]
podcheck.t: Fix typo

The match for the ">" that ends a C<> was misplaced, and should be
after looking for a file suffix.  This caused some messages to be missed

13 years agopodcheck: Dashes often occur in file names
Karl Williamson [Sat, 18 Jun 2011 16:47:08 +0000 (10:47 -0600)]
podcheck: Dashes often occur in file names

13 years agoperlretut: Fix link problem
Karl Williamson [Sat, 18 Jun 2011 19:16:59 +0000 (13:16 -0600)]
perlretut: Fix link problem

13 years agopodcheck: Improve heuristics for L<>
Karl Williamson [Sat, 18 Jun 2011 16:36:49 +0000 (10:36 -0600)]
podcheck: Improve heuristics for L<>

podcheck.t uses heuristics to decide if something like a C<> should
instead be a L<>.  As noted in the comments, this adds some more checks
to eliminate some false positives

13 years agoNo need for D and d flags in pod.lst - source is fixed, and contains the target
Nicholas Clark [Tue, 21 Jun 2011 09:46:00 +0000 (11:46 +0200)]
No need for D and d flags in pod.lst - source is fixed, and contains the target

As the edited perldelta is now always pod/perldelta.pod (instead of a file with
version numbers in it), we don't need a 'D' flag to mark it. As perldelta.pod
contains within itself the number of the version it refers to, we can use that
to infer the 'd' flag for the target filename.

This simplifies the release manager's tasklist for version bumping.

13 years agoRecord L<YAML::Syck> as a link to a known external module.
Nicholas Clark [Tue, 21 Jun 2011 08:37:49 +0000 (10:37 +0200)]
Record L<YAML::Syck> as a link to a known external module.

Previously it was seen as a broken link, and a "known issue" flagged against
perldelta, permitting podcheck.t to pass.

13 years agoUpdate epigraphs.pod for 5.15.0
David Golden [Tue, 21 Jun 2011 06:22:22 +0000 (02:22 -0400)]
Update epigraphs.pod for 5.15.0

13 years agopodcheck.t: update known issues
David Golden [Mon, 20 Jun 2011 23:07:28 +0000 (19:07 -0400)]
podcheck.t: update known issues

13 years agoperldelta: note YAML::Syck as known issue
David Golden [Mon, 20 Jun 2011 22:45:53 +0000 (18:45 -0400)]
perldelta: note YAML::Syck as known issue

13 years agoperldelta: put some things in C<> tags
David Golden [Mon, 20 Jun 2011 21:15:11 +0000 (17:15 -0400)]
perldelta: put some things in C<> tags

13 years agoperlhist: add 5.15.0 and 5.14.1 entries
David Golden [Mon, 20 Jun 2011 21:04:13 +0000 (17:04 -0400)]
perlhist: add 5.15.0 and 5.14.1 entries

13 years agoFix for slight inconsistency in perldelta
Chris 'BinGOs' Williams [Mon, 20 Jun 2011 21:14:19 +0000 (22:14 +0100)]
Fix for slight inconsistency in perldelta

13 years agoperldelta: removed confusing XSLoader commentary
David Golden [Mon, 20 Jun 2011 21:01:00 +0000 (17:01 -0400)]
perldelta: removed confusing XSLoader commentary

13 years agoperldelta: add Math::Trig to entry for Math::Complex
David Golden [Mon, 20 Jun 2011 20:59:50 +0000 (16:59 -0400)]
perldelta: add Math::Trig to entry for Math::Complex

13 years agoUpdate Module::CoreList for 5.15.0
David Golden [Mon, 20 Jun 2011 20:55:55 +0000 (16:55 -0400)]
Update Module::CoreList for 5.15.0

13 years agoperldelta: final draft
David Golden [Mon, 20 Jun 2011 20:45:06 +0000 (16:45 -0400)]
perldelta: final draft

13 years agoperldelta: additional pre-release amendments
David Golden [Mon, 20 Jun 2011 20:31:51 +0000 (16:31 -0400)]
perldelta: additional pre-release amendments

13 years agoupdate Changes with 5.15.0 references
David Golden [Mon, 20 Jun 2011 19:58:14 +0000 (15:58 -0400)]
update Changes with 5.15.0 references

13 years agoupdate INSTALL with 5.15.0 references
David Golden [Mon, 20 Jun 2011 19:56:32 +0000 (15:56 -0400)]
update INSTALL with 5.15.0 references

13 years agotweak perlhack and update known POD issues
David Golden [Mon, 20 Jun 2011 19:52:55 +0000 (15:52 -0400)]
tweak perlhack and update known POD issues

13 years agoUpdate CUSTOMIZED in Maintainers.pl
David Golden [Mon, 20 Jun 2011 19:37:31 +0000 (15:37 -0400)]
Update CUSTOMIZED in Maintainers.pl

Several cpan-upstream distributions had patches directly in blead
that do not match the upstream distribution.  These are all
now noted as CUSTOMIZED for future tracking.

13 years agoMaintainers.PL: update Getopt::Long CUSTOMIZED
David Golden [Mon, 20 Jun 2011 19:02:50 +0000 (15:02 -0400)]
Maintainers.PL: update Getopt::Long CUSTOMIZED

13 years agoRevert autodie version bump
David Golden [Mon, 20 Jun 2011 18:45:37 +0000 (14:45 -0400)]
Revert autodie version bump

autodie has not changed from CPAN, though blead has locally patched
a single test file to avoid a platform specific failure.

This change keeps the original CPAN version numbering, as the
local test file patch is now tracked in Porting/Maintainers.pl

13 years agoAdd CUSTOMIZED for autodie and CGI
David Golden [Mon, 20 Jun 2011 18:43:56 +0000 (14:43 -0400)]
Add CUSTOMIZED for autodie and CGI

13 years agoImprove tracking of cpan-upstream overrides
David Golden [Mon, 20 Jun 2011 18:40:47 +0000 (14:40 -0400)]
Improve tracking of cpan-upstream overrides

We have the CUSTOMIZED field in Maintainers.pl for indicating where we
expect blead to differ from a CPAN tarball.  This commit documents that
in perlhack and makes core-cpan-diff more aggressive about checking it
and reporting about it.

13 years agoperldelta: pre-release partial cleanup
David Golden [Mon, 20 Jun 2011 17:39:42 +0000 (13:39 -0400)]
perldelta: pre-release partial cleanup

13 years agoTalk to Leo about dev.perl.org, not Rafael
Leon Brocard [Mon, 20 Jun 2011 14:09:17 +0000 (15:09 +0100)]
Talk to Leo about dev.perl.org, not Rafael

13 years agoCreate pod/perl5125delta.pod
Leon Brocard [Mon, 20 Jun 2011 13:44:46 +0000 (14:44 +0100)]
Create pod/perl5125delta.pod

13 years agoAdd the 5.12.4 epigraph to Porting/epigraphs.pod
Leon Brocard [Mon, 20 Jun 2011 13:06:19 +0000 (14:06 +0100)]
Add the 5.12.4 epigraph to Porting/epigraphs.pod

13 years agoAdd 5.12.4 release date to pod/perlhist.pod
Leon Brocard [Mon, 20 Jun 2011 07:12:13 +0000 (08:12 +0100)]
Add 5.12.4 release date to pod/perlhist.pod

13 years agoAdd release date for 5.12.4 to lib/Module/CoreList.pm
Leon Brocard [Mon, 20 Jun 2011 07:01:54 +0000 (08:01 +0100)]
Add release date for 5.12.4 to lib/Module/CoreList.pm

13 years agoAdd Shigeya Suzuki’s new address to checkAUTHORS.pl
Father Chrysostomos [Mon, 20 Jun 2011 01:07:23 +0000 (18:07 -0700)]
Add Shigeya Suzuki’s new address to checkAUTHORS.pl

13 years agoauthor email address change
Shigeya Suzuki [Mon, 20 Jun 2011 01:05:50 +0000 (18:05 -0700)]
author email address change

13 years agoperldelta template: who are -> who will be
Father Chrysostomos [Sun, 19 Jun 2011 21:06:35 +0000 (14:06 -0700)]
perldelta template: who are -> who will be

13 years agoperldelta: who are -> who will be
Father Chrysostomos [Sun, 19 Jun 2011 21:05:59 +0000 (14:05 -0700)]
perldelta: who are -> who will be

13 years agoperl513*delta, perl5140delta: who are -> who will be
Father Chrysostomos [Sun, 19 Jun 2011 21:04:02 +0000 (14:04 -0700)]
perl513*delta, perl5140delta: who are -> who will be

13 years agoperldelta up to 5.12: who are -> who will be
Father Chrysostomos [Sun, 19 Jun 2011 20:46:30 +0000 (13:46 -0700)]
perldelta up to 5.12: who are -> who will be

13 years agoperldelta updates for some build improvements and internal changes.
Nicholas Clark [Sun, 19 Jun 2011 09:46:38 +0000 (11:46 +0200)]
perldelta updates for some build improvements and internal changes.

13 years agoCorrect the magic table in perlguts.pod following f34d15629da26eee.
Nicholas Clark [Sun, 19 Jun 2011 09:03:01 +0000 (11:03 +0200)]
Correct the magic table in perlguts.pod following f34d15629da26eee.

Unfortunately this remains a manual step, as there's a strong distinction
between (100%) generated files that we need to ship, which the regen scripts are
allowed to wipe and replace, and any files subject to human editing, which they
aren't.

13 years agoanother perldelta typo
Father Chrysostomos [Sun, 19 Jun 2011 02:40:01 +0000 (19:40 -0700)]
another perldelta typo

13 years agotwo perldelta fixes
Father Chrysostomos [Sun, 19 Jun 2011 02:33:33 +0000 (19:33 -0700)]
two perldelta fixes

while, not when

What are apple developer tools? Tools for developing apples? For
grafting, perhaps? :-)

13 years agoIncrease stylistic consistency in perldelta by adding C<> and F<>.
Nicholas Clark [Sat, 18 Jun 2011 21:06:43 +0000 (23:06 +0200)]
Increase stylistic consistency in perldelta by adding C<> and F<>.

Correct the stated initial version of COW shared hash key scalars - the first
stable release they were in was 5.8.0, as they were added by Nick Ing-Simmons
in September 2002 in commit 1c846c1f6d96d2ca.

13 years agoperldelta: Minor pod fixes
Karl Williamson [Sat, 18 Jun 2011 18:07:59 +0000 (12:07 -0600)]
perldelta: Minor pod fixes

Commit a1e75797c204ade843c6eb8052cc5577af06c1d6 changed L<Shell>
to C<Shell>, but in reality there still is a Shell module accessible
from L<>, because L<> looks through all of CPAN.  podcheck.t has
to know that it's accessible, and that was done with commit
ce98560028e1830366c9182fe9dd70ec264fe6ee.

Also make the reference to Devel::DProf from C<> to L<> for symmetry.

And, a file reference should be enclosed in F<> and not C<>

13 years agoPrefer the system gcc when searching for libraries such as -lm
Nicholas Clark [Wed, 15 Jun 2011 15:24:43 +0000 (16:24 +0100)]
Prefer the system gcc when searching for libraries such as -lm

40f026236b9959b7 added code to the Linux hints file to use gcc to locate
libraries such as -lm. However, if the user has their own gcc earlier in $PATH
than the system gcc, we don't want its libraries. So try to prefer the system
gcc.

13 years agoForgot to run keywords.pl
Father Chrysostomos [Fri, 17 Jun 2011 21:09:05 +0000 (14:09 -0700)]
Forgot to run keywords.pl

I didn’t realise adding a comment would require this.

13 years agoTypo in podcheck.t
Father Chrysostomos [Fri, 17 Jun 2011 21:08:11 +0000 (14:08 -0700)]
Typo in podcheck.t

$ ./perl -I../lib --add_link foo
Unrecognized switch: --add_link  (-h will show valid options).

$ ./perl -I../lib porting/podcheck.t --add_link foo
Changed: /Users/sprout/Perl/perl.git/t/porting/known_pod_issues.dat

13 years agoDeparse CORE::break
Father Chrysostomos [Fri, 17 Jun 2011 20:32:29 +0000 (13:32 -0700)]
Deparse CORE::break

This is something 80e3f4adf22 missed.

13 years agoDoc update for changes in 5.15.0 + tweaks
Father Chrysostomos [Fri, 17 Jun 2011 20:29:04 +0000 (13:29 -0700)]
Doc update for changes in 5.15.0 + tweaks

13 years agoRemove unnecessary code and tests
Father Chrysostomos [Fri, 17 Jun 2011 16:33:26 +0000 (09:33 -0700)]
Remove unnecessary code and tests

This test was relying on bug #91844.  As that has been fixed (by com-
mit 3ed94dc, which erroneously claimed to fix #81944), this test is
not testing what it purports to test.

Also as a result of that bug fix, it doesn’t matter if the TEMP flag
is set, I can get rid of the SvTEMP_off.  The only effects the TEMP
flag can have now occur only when the refcount is 1, but since *_
holds a refcount and the mortals stack does as well, it’s going to be
2 unless someone undefs *_, in which case the callback won’t have any
reference to it.  If it tries to make a weak reference, doing so will
turn TEMP off.

13 years agoperlfaq4: Use E<> instead of non-ASCII
Karl Williamson [Fri, 17 Jun 2011 19:52:35 +0000 (13:52 -0600)]
perlfaq4: Use E<> instead of non-ASCII

We're trying to get rid of non-ASCII in pods.

13 years agopodcheck.t: Suppress entity out of range messages
Karl Williamson [Fri, 17 Jun 2011 19:39:08 +0000 (13:39 -0600)]
podcheck.t: Suppress entity out of range messages

podchecker emits these messages if an E<> is above 255.  But these
actually work, so the messages are improper.  podchecker is not maintained.

13 years agopodcheck: Make sure perltoc is known
Karl Williamson [Fri, 17 Jun 2011 19:31:47 +0000 (13:31 -0600)]
podcheck: Make sure perltoc is known

perltoc is problematic because it is machine generated from constituent
pods.  This means that errors in them propgagate to it.  As a result,
commit e678c2947ab9ff776af461b393f3a3eecebab64a just skipped it.   But
this led to pods that link to it being flagged as having broken links.
This commit changes things so instead of skipping perltoc, it is added
to the list of pods that are known but are parsed only when there are
links to inside it (of which there are unlikely to be any), and then
only for the existence of such targets.

13 years agopodcheck.t: Add --add_link option
Karl Williamson [Fri, 17 Jun 2011 19:15:24 +0000 (13:15 -0600)]
podcheck.t: Add --add_link option

L<> links in pod apply to anything that search cpan can find.  This
means that it applies to more things than podcheck can find in the Perl
distribution.  So, a list is kept in a data base of modules and man
pages that are known to exist, but aren't findable by podcheck.  This
list has to be maintained manually.  The new option makes adding to the
list easier.

The man page and instructions are somewhat tweaked as well.

13 years agopodcheck.t: Add 'Shell' to list of known modules
Karl Williamson [Fri, 17 Jun 2011 18:32:09 +0000 (12:32 -0600)]
podcheck.t: Add 'Shell' to list of known modules

13 years agoUpdate Module::CoreList with v5.14.1 data
Chris 'BinGOs' Williams [Fri, 17 Jun 2011 18:44:50 +0000 (19:44 +0100)]
Update Module::CoreList with v5.14.1 data

13 years agoCorrect a bug number in perldelta
Father Chrysostomos [Fri, 17 Jun 2011 15:27:30 +0000 (08:27 -0700)]
Correct a bug number in perldelta

Commit 3ed94dc0 fixed #91844, not #81944, as it claimed.

13 years agoAllow ‘sub x :lvalue’ to apply to XSUBs and stubs
Father Chrysostomos [Fri, 17 Jun 2011 15:21:50 +0000 (08:21 -0700)]
Allow ‘sub x :lvalue’ to apply to XSUBs and stubs

This was disabled in 5.12 (with a warning) by commit 885ef6f5, because
applying the attribute to a Perl sub isn’t effective: it does not mod-
ify the op tree accordingly.

But applying an attribute to an XSUB after the fact is perfectly
fine, and is the only way to do it (either with declarative syntax or
attributes.pm).  This commit restores the old behaviour of declarative
for XSUBs.  (attributes.pm never stopped working.)

Commit 885ef6f5 also stopped a declaration from applying the flag to
an undefined subroutine if it happens to have been assigned from else-
where.  It does not make sense to allow the :method attribute to be
applied to such a sub, but not :lvalue.

13 years agoIn pp_subst, use a mortal scalar for dstr, instead of SAVEFREESV().
Nicholas Clark [Fri, 17 Jun 2011 13:19:07 +0000 (15:19 +0200)]
In pp_subst, use a mortal scalar for dstr, instead of SAVEFREESV().

Creation of the mortal can be done with newSVpvn_flags(), saving 1 function
call. Also, the mortal stack uses 1 pointer, whereas the save stack will use 2.
It doesn't matter that dstr is now marked SVs_TEMP, as both code paths already
gut it, stealing its SvPVX(). The SV head will happen to last a bit longer now,
to the next FREETMPS, instead of the the scope pop at the end of pp_subst or
pp_substcont.

13 years agoAdd the v5.12.4-RC2 and v5.14.1 epigraphs to Porting/epigraphs.pod
Leon Brocard [Fri, 17 Jun 2011 12:13:57 +0000 (13:13 +0100)]
Add the v5.12.4-RC2 and v5.14.1 epigraphs to Porting/epigraphs.pod

13 years agoperldelta update + typo fixes
Father Chrysostomos [Fri, 17 Jun 2011 03:15:50 +0000 (20:15 -0700)]
perldelta update + typo fixes

13 years ago[perl #81944] Non-lvalue subs do not copy return values
Father Chrysostomos [Thu, 16 Jun 2011 13:27:50 +0000 (06:27 -0700)]
[perl #81944] Non-lvalue subs do not copy return values

return and leavesub see if they can cheat by not copying anything
marked TEMP, since presumably nothing else is using it.  That means
the return values of delete() and shift() are not copied.  Since @_
aliases to the caller’s variables, sometimes what is returned *is*
used elsewhere and still marked TEMP.  So cases like sub { return
delete $_[0] } ->($x) end up returning $x unchanged, instead of
copying it.

As mentioned in the ticket, the solution is to copy only if the refer-
ence count is 1.

This also allows me to simplify the lvalue-returning code without
spreading this bug further.  (pp_leavesublv currently avoids calling
sv_2mortal, in order not to set the TEMP flag.)

13 years agoStop lvalue subs from copying read-only scalars
Father Chrysostomos [Thu, 16 Jun 2011 13:02:23 +0000 (06:02 -0700)]
Stop lvalue subs from copying read-only scalars

They were only doing so in reference context (subroutine args,
for(...)).

Explicit return already worked, but only because I didn’t write it
well.  I’m in the process of trying to merge the two.

13 years agoTest ref(\pos) and ref(\vec...)
Father Chrysostomos [Thu, 16 Jun 2011 21:55:18 +0000 (14:55 -0700)]
Test ref(\pos) and ref(\vec...)

13 years agoRevert "pos in lvalue context now returns a PVMG instead of a PVLV."
Father Chrysostomos [Thu, 16 Jun 2011 21:51:33 +0000 (14:51 -0700)]
Revert "pos in lvalue context now returns a PVMG instead of a PVLV."

This reverts commit 571f0e8653a532c34edde36e797ecba446978b1c.

I’m afraid I have to revert this, as it does not modify sv_reftype
accordingly, and doing so would add *more* complexity (the opposite
of what that commit was trying to achieve) and slow down ref() at run
time, by making it search for pos magic.

13 years agoperldelta_template: No longer need to indent L<XXX>
Karl Williamson [Fri, 17 Jun 2011 00:48:08 +0000 (18:48 -0600)]
perldelta_template: No longer need to indent L<XXX>

The indentation was done to avoid podcheck.t tests failing for the
broken link to the placeholder XXX.  This is no longer necessary,
as
    1) perldelta_template itself is skipped by podcheck;
    2) podcheck now has been taught to not output a message for
       links to XXX in perldelta

13 years agopodcheck.t: Special case perldelta
Karl Williamson [Fri, 17 Jun 2011 00:40:14 +0000 (18:40 -0600)]
podcheck.t: Special case perldelta

This adds a special case to the checks for perldelta to ignore the
placeholder links (that by necessity are broken).

13 years agopodcheck.t: Ignore perldelta_template.pod
Karl Williamson [Fri, 17 Jun 2011 00:29:42 +0000 (18:29 -0600)]
podcheck.t: Ignore perldelta_template.pod

This file is not a pod, and was supposed to be ignored, but due to
an error in the logic that converts from native file system to
unix format, it was being processed.

13 years agopodcheck.t: NAME ok to be used in multi perldeltas
Karl Williamson [Fri, 17 Jun 2011 00:17:12 +0000 (18:17 -0600)]
podcheck.t: NAME ok to be used in multi perldeltas

The name of all perldeltas should be "perldelta".  So, set to -1 in the db
to indicate to ignore this check.

13 years ago"who be" should be "who are" in perldelta template
Father Chrysostomos [Thu, 16 Jun 2011 21:30:02 +0000 (14:30 -0700)]
"who be" should be "who are" in perldelta template

13 years ago"who be" should be "who are" in perldelta.pod
Pau Amma [Thu, 16 Jun 2011 21:28:46 +0000 (14:28 -0700)]
"who be" should be "who are" in perldelta.pod

13 years ago"who be" should be "who are" in perl*delta.pod
Pau Amma [Thu, 16 Jun 2011 21:28:28 +0000 (14:28 -0700)]
"who be" should be "who are" in perl*delta.pod

(5.13 and 5.14)

13 years ago"who be" should be "who are" in perl*delta.pod
Pau Amma [Thu, 16 Jun 2011 21:27:42 +0000 (14:27 -0700)]
"who be" should be "who are" in perl*delta.pod

(up to 5.12)

13 years agoperldelta: another CPAN breakage
Father Chrysostomos [Thu, 16 Jun 2011 20:13:13 +0000 (13:13 -0700)]
perldelta: another CPAN breakage

13 years agoIncrease Pod::Perldoc’s version
Father Chrysostomos [Thu, 16 Jun 2011 20:09:17 +0000 (13:09 -0700)]
Increase Pod::Perldoc’s version

Perl 5.14.1 is using the number 3.15_04.  What blead had until
recently was identical to 5.14.1, but now it has diverged, so
it needs a new number.