This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl5.git
6 years agoFor ptr masking use PTRSIZE-1, not nested conditional statement.
Jarkko Hietaniemi [Wed, 30 Apr 2014 11:49:07 +0000 (07:49 -0400)]
For ptr masking use PTRSIZE-1, not nested conditional statement.

6 years agorefactor pp_list
Daniel Dragan [Sun, 18 May 2014 02:10:01 +0000 (22:10 -0400)]
refactor pp_list

-move PL_stack_sp and PL_stack_base reads into the branch in which they
 are used, this also removes 1 var from being saved across the function
 call in GIMME, which removes saving and restoring 1 non-vol register
-write SP to PL_stack_sp (PUTBACK) only if it was changed
-POPMARK is mutable, it must execute on all branches

this reduced pp_list's machine code size of the function from 0x58 to
0x53 bytes on VC 2003 -01 32 bits

6 years agoMemory leak in Storable::dclone with STORABLE_freeze hook
Alex Solovey [Wed, 21 May 2014 06:27:14 +0000 (16:27 +1000)]
Memory leak in Storable::dclone with STORABLE_freeze hook

Storable documentation recommends using dclone shortcut in
STORABLE_freeze hook: "Unless you know better, serializing hook should
always say:
                sub STORABLE_freeze {
                    my ($self, $cloning) = @_;
                    return if $cloning; # Regular default serialization
                    ....
                }

            in order to keep reasonable dclone() semantics."

However, this causes a memory leak which is easy to observe with the
following small script:

=== storable-leak.plx ===
use Storable qw( dclone );

package Foo {
     sub new { return bless {}, __PACKAGE__ }

     sub STORABLE_freeze {
         my( $self, $cloning ) = @_;
         # Switch to regular default serialization results in memory leak
         return if $cloning;
         return 'Foo';
     }
}

my $d = Foo->new();
while(1)
{
     dclone( $d );
}
===

The leak is caused by missing cleanup of empty array value returned by
the hook. I've attached a simple patch for Storable-2.45 which fixes
this issue.

Reported in [perl #121928]

Amended to include version bump and Storable changelog entry.

6 years agoregen Makefile.SH
David Mitchell [Wed, 28 May 2014 10:04:12 +0000 (11:04 +0100)]
regen Makefile.SH

I ran regen/lib_cleanup.pl because porting/regen.t was failing.

No I don't understand this area at all. And I don't think 'make realclean'
is doing what its supposed to be doing.

6 years agoUpdate Test-Simple to CPAN version 1.001003
Chris 'BinGOs' Williams [Tue, 27 May 2014 21:49:00 +0000 (22:49 +0100)]
Update Test-Simple to CPAN version 1.001003

  [DELTA]

1.001003     Fri Mar  21 21:12:32 PST 2014
    * Doc updates for maintainer change

6 years agoUpdate autodie to CPAN version 2.25
Chris 'BinGOs' Williams [Tue, 27 May 2014 21:45:06 +0000 (22:45 +0100)]
Update autodie to CPAN version 2.25

  [DELTA]

2.25      2014-04-03 09:43:15EST+1100 Australia/Melbourne

        * DOCS: Spelling fixes in autodie::ScopeUtil
                (Courtesy Salvatore Bonaccorso)

2.24      2014-03-30 19:30:10EST+1100 Australia/Melbourne

        * FEATURE: Provide a stack backtrace when `Carp::Always` is enabled.
                   Note that sometimes this is not as pretty as it could
                   be, patches welcome.
                   (Thanks to Niels Thykier, GH #35)

        * BUGFIX: Fix situations where `no autodie` doesn't respect lexical
                  scope. (Thanks to Niels Thykier, GH #41, RT #72053,
                  RT #86396)

        * INTERNAL: Remove now unused variables in code (Niels Thykier).

        * DOCS: Make it extra-clear autodie doesn't check `print`.
                (Dave Rolsky, GH #39)

        * TEST: Removed obsolete boilerplate.t

        * TEST / INTERNAL: Enabled travis-ci for Perl 5.8

        * TEST: Stopped some Pod::Coverage tests failing under Perl 5.8

        * BUILD: Better support for building in a read-only directory
                 (courtesy Andrew Fresh, GH #46)

6 years agoUpdate Module-Metadata to CPAN version 1.000022
Chris 'BinGOs' Williams [Tue, 27 May 2014 21:38:10 +0000 (22:38 +0100)]
Update Module-Metadata to CPAN version 1.000022

  [DELTA]

1.000022 - 2014-04-29
  - work around change in comparison behaviour in Test::More 0.95_01 by being
    more explicit with our tests - now explicitly checking the string form of
    the extracted version, rather than the entire version object
  - ensure the extracted version is returned as a version object in all cases
    (RT#87782, Randy Stauner)

1.000021 - 2014-04-29
  - fix use of newer interface from File::Path, to avoid another prereq on
    older perls (Graham Knop, PR#7)
  - fixed all out of date prereq declarations

1.000020 - 2014-04-27
  - new is_indexable() object method (ether, RT#84357)
  - eliminated dependency on IO::File (and by virtue, XS) - thanks, leont!
  - removed cruft in test infrastructure left behind from separation from
    Module::Build (ether)
  - repository moved to https://github.com/Perl-Toolchain-Gang/Module-Metadata
  - .pm file is now wholly ascii, for nicer fatpacking (RT#95086)
  - some code micro-optimizations (Olivier Mengué, PR#4)

6 years agoperldelta for a7752796dd84, 0baa1af7fb9e
Tony Cook [Wed, 28 May 2014 06:18:13 +0000 (16:18 +1000)]
perldelta for a7752796dd840baa1af7fb9e

6 years agobump Math::BigRat $VERSION
Tony Cook [Tue, 13 May 2014 00:09:34 +0000 (10:09 +1000)]
bump Math::BigRat $VERSION

6 years agoSync Math-BigRat blead vs. CPAN
Peter John Acklam [Wed, 9 Apr 2014 17:30:40 +0000 (19:30 +0200)]
Sync Math-BigRat blead vs. CPAN

Some POD changes were accidentally included in the CPAN release of
Math-BigRat before they were included in blead. This patch gets the
module in sync.

6 years agoPierre Bogossian is now a perl author
Tony Cook [Mon, 12 May 2014 05:52:04 +0000 (15:52 +1000)]
Pierre Bogossian is now a perl author

6 years agoRemove redundant test
Pierre Bogossian [Fri, 4 Apr 2014 18:07:56 +0000 (20:07 +0200)]
Remove redundant test

6 years agoperldelta for a18468ad888b
Tony Cook [Wed, 28 May 2014 05:13:25 +0000 (15:13 +1000)]
perldelta for a18468ad888b

6 years agoIgnore mismatched versions between Carp and Carp::Heavy if the version discrepancy...
Karen Etheridge [Thu, 3 Apr 2014 18:08:20 +0000 (11:08 -0700)]
Ignore mismatched versions between Carp and Carp::Heavy if the version discrepancy does not actually lead to broken code

Carp::Heavy's guts were merged into Carp in 1.12. After this point, if a
different version of Carp::Heavy is loaded than Carp, no harm will be done and
the error can be ignored.

6 years agoperldelta for b464e2b7c8ad
Tony Cook [Wed, 28 May 2014 04:46:56 +0000 (14:46 +1000)]
perldelta for b464e2b7c8ad

6 years agofix the I32 bug for index() and rindex()
Tony Cook [Tue, 15 Apr 2014 01:57:57 +0000 (03:57 +0200)]
fix the I32 bug for index() and rindex()

6 years agoDocument -l on symlinkless file systems
Smylers [Fri, 28 Mar 2014 16:33:05 +0000 (16:33 +0000)]
Document -l on symlinkless file systems

We can rely on -l always being false on platforms that don't support
symlinks:
http://www.nntp.perl.org/group/perl.perl5.porters/2014/03/msg214012.html

6 years agoperldelta for c59f1e04636e
Tony Cook [Wed, 28 May 2014 03:54:07 +0000 (13:54 +1000)]
perldelta for c59f1e04636e

6 years agoFix RT #121509 : perl -d handling chdir().
Shlomi Fish [Thu, 27 Mar 2014 17:07:50 +0000 (19:07 +0200)]
Fix RT #121509 : perl -d handling chdir().

See: https://rt.perl.org/Ticket/Display.html?id=121509

    [perl #121509] perl debugger doesn't save starting dir to restart from

Thanks to Linda Walsh for reporting the problem and RJBS for commenting
for initial approval. Fix and a regression test by Shlomi Fish.

6 years agopp_sys.c: Optimize out a call to PerlIO_get_cnt
Niels Thykier [Sat, 22 Mar 2014 14:54:41 +0000 (15:54 +0100)]
pp_sys.c: Optimize out a call to PerlIO_get_cnt

If PerlIO_getc returns EOF, PerlIO_get_cnt is not going to return a
positive value all of a sudden.

Signed-off-by: Niels Thykier <niels@thykier.net>
6 years agorefactor av_delete
Daniel Dragan [Thu, 13 Mar 2014 06:51:51 +0000 (02:51 -0400)]
refactor av_delete

Some bad code generation/bad optimization from VC caused me to clean this
up. Dont write AvARRAY(av)[key] = NULL twice. It appears in 2 branches
just as written VC asm wise. Don't call sv_2mortal on a NULL SV*. It
works but less efficient. On VC2008 x64 -O1 this func dropped from 0x208
to 0x202 bytes of machine code after this patch.

6 years agoperldelta for babb663abd
Tony Cook [Wed, 28 May 2014 01:44:07 +0000 (11:44 +1000)]
perldelta for babb663abd

6 years agobump perl5db.pl $VERSION to 1.45
Tony Cook [Wed, 28 May 2014 01:12:40 +0000 (11:12 +1000)]
bump perl5db.pl $VERSION to 1.45

6 years agoImplement get_fork_TTY for tmux
Rob Hoelz [Sun, 9 Jun 2013 19:25:09 +0000 (21:25 +0200)]
Implement get_fork_TTY for tmux

6 years agoperldelta for 7cb3f9598b
Tony Cook [Wed, 28 May 2014 01:02:08 +0000 (11:02 +1000)]
perldelta for 7cb3f9598b

6 years ago[perl #121112] only warn if newline is the last non-NUL character
Tony Cook [Mon, 12 May 2014 03:55:36 +0000 (13:55 +1000)]
[perl #121112] only warn if newline is the last non-NUL character

6 years agoHarmonise dist/ versions for CPAN releases
Chris 'BinGOs' Williams [Tue, 27 May 2014 21:35:36 +0000 (22:35 +0100)]
Harmonise dist/ versions for CPAN releases

6 years agoAdd epigraph for Perl 5.21.0.
James E Keenan [Tue, 27 May 2014 18:46:39 +0000 (14:46 -0400)]
Add epigraph for Perl 5.21.0.

6 years agoHarmonise Module-CoreList version for CPAN release
Chris 'BinGOs' Williams [Tue, 27 May 2014 17:38:17 +0000 (18:38 +0100)]
Harmonise Module-CoreList version for CPAN release

6 years agoupdate Module::CoreList for 5.21.1
Ricardo Signes [Tue, 27 May 2014 14:42:12 +0000 (10:42 -0400)]
update Module::CoreList for 5.21.1

Blunder made in the release of 5.21.0:  Module::CoreList was set to version
5.21.1 instead of 5.21.0.  I've at least temporarily given this commit a
dev version.  Worst case, we do that in 5.21.1 and re-sync in 5.21.2.

6 years agoadd new perldelta for 5.21.1
Ricardo Signes [Tue, 27 May 2014 14:36:05 +0000 (10:36 -0400)]
add new perldelta for 5.21.1

6 years agobump version to 5.21.1
Ricardo Signes [Tue, 27 May 2014 14:35:42 +0000 (10:35 -0400)]
bump version to 5.21.1

6 years agoupdate perldelta acknowledgements v5.21.0
Ricardo Signes [Tue, 27 May 2014 14:02:21 +0000 (10:02 -0400)]
update perldelta acknowledgements

6 years agoPackage::Constants is a legitimate module name, not a broken link.
Nicholas Clark [Tue, 27 May 2014 14:00:46 +0000 (16:00 +0200)]
Package::Constants is a legitimate module name, not a broken link.

6 years agofix version in autogenerated acknowledgements
Ricardo Signes [Tue, 27 May 2014 13:22:23 +0000 (09:22 -0400)]
fix version in autogenerated acknowledgements

6 years agoupdate perldelta for 5.21.0
Ricardo Signes [Tue, 27 May 2014 13:16:34 +0000 (09:16 -0400)]
update perldelta for 5.21.0

6 years agoupdate corelist for 5.21.0
Ricardo Signes [Tue, 27 May 2014 13:04:02 +0000 (09:04 -0400)]
update corelist for 5.21.0

6 years agomatch Module::CoreList version to perl version
Ricardo Signes [Tue, 27 May 2014 12:59:29 +0000 (08:59 -0400)]
match Module::CoreList version to perl version

6 years agoremove Package-Constants from core perl distribution
Ricardo Signes [Tue, 27 May 2014 12:43:36 +0000 (08:43 -0400)]
remove Package-Constants from core perl distribution

6 years agoremove Module-Build from core perl distribution
Ricardo Signes [Tue, 27 May 2014 12:18:37 +0000 (08:18 -0400)]
remove Module-Build from core perl distribution

6 years agoremove CGI.pm from core perl distribution
Ricardo Signes [Tue, 27 May 2014 11:56:59 +0000 (07:56 -0400)]
remove CGI.pm from core perl distribution

6 years agoadd the 5.20.0 release epigraph
Ricardo Signes [Tue, 27 May 2014 11:43:09 +0000 (07:43 -0400)]
add the 5.20.0 release epigraph

6 years agodo the version bumping and associated 5.21.0-ification
Ricardo Signes [Tue, 27 May 2014 03:46:51 +0000 (23:46 -0400)]
do the version bumping and associated 5.21.0-ification

6 years agoregen META.json
Ricardo Signes [Tue, 27 May 2014 02:18:02 +0000 (22:18 -0400)]
regen META.json

6 years agoadd 5.21.0 to corelist, bump version
Ricardo Signes [Tue, 27 May 2014 02:09:13 +0000 (22:09 -0400)]
add 5.21.0 to corelist, bump version

6 years agoadd a 5.21 feature bundle
Ricardo Signes [Tue, 27 May 2014 02:03:02 +0000 (22:03 -0400)]
add a 5.21 feature bundle

6 years agonew perldelta
Ricardo Signes [Tue, 27 May 2014 01:56:15 +0000 (21:56 -0400)]
new perldelta

6 years agobump version to 5.21.0
Ricardo Signes [Tue, 27 May 2014 01:52:10 +0000 (21:52 -0400)]
bump version to 5.21.0

6 years agoskip RC tags when checking versions diffs v5.20.0
Graham Knop [Sat, 21 Dec 2013 23:08:12 +0000 (18:08 -0500)]
skip RC tags when checking versions diffs

6 years agoupdate v5.20.0 release date in Module::CoreList
Ricardo Signes [Mon, 26 May 2014 13:19:45 +0000 (09:19 -0400)]
update v5.20.0 release date in Module::CoreList

6 years agoupdate v5.20.0 release date in perlhist
Ricardo Signes [Mon, 26 May 2014 13:19:33 +0000 (09:19 -0400)]
update v5.20.0 release date in perlhist

6 years agopatchlevel: we are a release candidate no more!
Ricardo Signes [Mon, 26 May 2014 12:45:08 +0000 (08:45 -0400)]
patchlevel: we are a release candidate no more!

6 years agoObituary for Greg McCarroll.
Nicholas Clark [Sun, 25 May 2014 20:35:44 +0000 (22:35 +0200)]
Obituary for Greg McCarroll.

6 years agoRemove note of test failures on FAT that were fixed by perl #21442's fixes
Steve Hay [Sat, 24 May 2014 13:25:14 +0000 (14:25 +0100)]
Remove note of test failures on FAT that were fixed by perl #21442's fixes

The list of tests fixed doesn't exactly match the list in README.win32, but
all tests now pass when building/testing on FAT with the Windows OS on NTFS.

6 years agoUpdate PathTools version in Porting
Steffen Mueller [Fri, 23 May 2014 17:00:48 +0000 (19:00 +0200)]
Update PathTools version in Porting

6 years agoDocument known test failure in www.mingw.org builds of gcc-4.8.1 (at least)
Steve Hay [Fri, 23 May 2014 08:12:37 +0000 (09:12 +0100)]
Document known test failure in mingw.org builds of gcc-4.8.1 (at least)

This came up in perl #121643, but I forgot to add a note of this Known
Problem.

6 years agoNote that the minimum supported gcc (on Windows) is 3.4.5
Steve Hay [Thu, 22 May 2014 07:24:47 +0000 (08:24 +0100)]
Note that the minimum supported gcc (on Windows) is 3.4.5

Earlier versions (from www.mingw.org, at least) will build perl, but have
a linker bug that causes various tests to fail due to problems with
SDBM_File.dll. See perl #121936 for details.

6 years agoAdd notice for removal of find2perl, s2p and a2p
Leon Timmermans [Wed, 21 May 2014 13:16:02 +0000 (15:16 +0200)]
Add notice for removal of find2perl, s2p and a2p

6 years agoperldelta: Note patch fixed a bunch of tickets
Karl Williamson [Mon, 19 May 2014 21:07:16 +0000 (15:07 -0600)]
perldelta: Note patch fixed a bunch of tickets

Unbeknownst to the authors, several other tickets got fixed.

6 years agoperldelta: update known problems
Ricardo Signes [Mon, 19 May 2014 14:33:16 +0000 (10:33 -0400)]
perldelta: update known problems

6 years agoperlfunc: Should chdir("/") immed after chroot
Jarkko Hietaniemi [Thu, 24 Apr 2014 22:16:30 +0000 (18:16 -0400)]
perlfunc: Should chdir("/") immed after chroot

Inspired by Coverity perl5 CID 28931: Insecure chroot: (CHROOT)
chroot_call.

The Perl chroot() is a thin wrapper around the system call, so the
chdir("/") should not go there.  But adding a note about the chdir()
being a good idea to perlfunc/chroot.

The committer reworded the inserted text for grammar and readability,
and the commit message to conform to git standards, and is pushing the
commit with the concurrence of the author.

6 years agoPATCH: [perl #121630]: perlpod clarification
Karl Williamson [Mon, 28 Apr 2014 20:10:37 +0000 (14:10 -0600)]
PATCH: [perl #121630]: perlpod clarification

6 years agopatchlevel: we are now v5.20.0-RC1 v5.20.0-RC1
Ricardo Signes [Fri, 16 May 2014 21:58:23 +0000 (17:58 -0400)]
patchlevel: we are now v5.20.0-RC1

6 years agoupdate perlhist for v5.20.0
Ricardo Signes [Fri, 16 May 2014 21:57:44 +0000 (17:57 -0400)]
update perlhist for v5.20.0

6 years agoremove the perl519*delta documents
Ricardo Signes [Fri, 16 May 2014 21:17:49 +0000 (17:17 -0400)]
remove the perl519*delta documents

6 years agoperldelta: update modules sections for 5.20.0
Ricardo Signes [Fri, 16 May 2014 15:20:42 +0000 (11:20 -0400)]
perldelta: update modules sections for 5.20.0

6 years agoperldelta: generate acknowledgements for 5.20.0
Ricardo Signes [Fri, 16 May 2014 15:14:18 +0000 (11:14 -0400)]
perldelta: generate acknowledgements for 5.20.0

6 years agoupdate CoreList for 5.20.0
Ricardo Signes [Fri, 16 May 2014 15:11:22 +0000 (11:11 -0400)]
update CoreList for 5.20.0

6 years agoPOSIX.pod: Add clarification for strtod();
Karl Williamson [Thu, 15 May 2014 20:13:36 +0000 (14:13 -0600)]
POSIX.pod: Add clarification for strtod();

6 years agodocument the API signature change for Perl_regexec_flags()
Tony Cook [Thu, 15 May 2014 03:38:42 +0000 (13:38 +1000)]
document the API signature change for Perl_regexec_flags()

and its related plugin structure pointer

inspired by https://rt.perl.org/Ticket/Display.html?id=121868 which was
also broken by ea3daa5d5f60389b105c00d4f7d05b5c2f2155f2

6 years agoFix commit 90674eaa88
Steve Hay [Wed, 14 May 2014 19:59:30 +0000 (20:59 +0100)]
Fix commit 90674eaa88

Spotted by Daniel Dragan. We use GetEnvironmentStringsW() (deliberately so:
see commit 4f46e52b00), so we must use FreeEnvironmentStringsW() to match.

6 years agoAdd links for perl bug tickets in previous commit
Steve Hay [Wed, 14 May 2014 16:46:40 +0000 (17:46 +0100)]
Add links for perl bug tickets in previous commit

6 years agoperldelta for #121676
Daniel Dragan [Wed, 14 May 2014 08:09:39 +0000 (04:09 -0400)]
perldelta for #121676

6 years ago[perl #121676] Fix memory leak in backticks and system
Steve Hay [Tue, 13 May 2014 11:53:10 +0000 (12:53 +0100)]
[perl #121676] Fix memory leak in backticks and system

Introduced by perl #113536. It doesn't actually leak on Windows XP due to
differences in the implementation of GetEnvironmentStringsW() compared to
later OSes, but the missing FreeEnvironmentStrings() was technically wrong
anyway, and does now bite. Thanks for Daniel Dragan for finding this.

6 years agouse skip_all; test.pl plan does not support skip_all
Gisle Aas [Wed, 14 May 2014 02:40:53 +0000 (22:40 -0400)]
use skip_all; test.pl plan does not support skip_all

6 years agoFix broken Makefile on Solaris 10.
Gisle Aas [Sun, 4 May 2014 22:09:23 +0000 (16:09 -0600)]
Fix broken Makefile on Solaris 10.

This uses sed to avoid the problem of the sh not being modern enough.

The commiter moved the sed so it appears in just one place.

6 years agoclarify SvPV documentation
David Golden [Tue, 13 May 2014 18:13:09 +0000 (14:13 -0400)]
clarify SvPV documentation

6 years agoperldelta: trim an absurd amount of trailing whitespace
Ricardo Signes [Tue, 13 May 2014 14:43:15 +0000 (10:43 -0400)]
perldelta: trim an absurd amount of trailing whitespace

6 years agoperldelta: add obituary entry for Diana Rosa
Ricardo Signes [Tue, 13 May 2014 14:29:11 +0000 (10:29 -0400)]
perldelta: add obituary entry for Diana Rosa

6 years ago[perl #121854] use re 'taint' regression
David Mitchell [Tue, 13 May 2014 13:18:06 +0000 (14:18 +0100)]
[perl #121854] use re 'taint' regression

Commit v5.19.8-533-g63baef5 changed the handling of locale-dependent
regexes so that the pattern was considered tainted at compile-time, rather
than determining it each time at run-time whenever it executed a
locale-dependent node. Unfortunately due to the conflating of two flags,
RXf_TAINTED and RXf_TAINTED_SEEN, it had the side effect of permanently
marking a pattern as tainted once it had had a single tainted result.

E.g.

    use re qw(taint);
    use Scalar::Util qw(tainted);
    for ($^X, "abc") {
        /(.*)/ or die;
        print "not " unless tainted("$1"); print "tainted\n";
    };

which from 5.19.9 onwards output:

    tainted
    tainted

but with this commit (and with 5.19.8 and earlier), it now outputs:

    tainted
    not tainted

The RXf_TAINTED flag indicates that the pattern itself is tainted, e.g.

    $r = qr/$tainted_value/

while the RXf_TAINTED_SEEN flag means that the results of the last match
are tainted, e.g.

    use re 'tainted';
    $tainted =~ /(.*)/;
    # $1 is tainted

Pre 63baef5, the code used to look like:

    at run-time:

        turn off RXf_TAINTED_SEEN;
        while (nodes to execute) {
            switch(node) {
            case
                BOUNDL: /* and other locale-specific ops */
                    turn on RXf_TAINTED_SEEN;
                    ...;
            }
        }
        if (tainted || RXf_TAINTED)
            turn on RXf_TAINTED_SEEN;

63baef5 changed it to:

    at compile-time:

        if (pattern has locale ops)
            turn on RXf_TAINTED_SEEN;

    at run-time:

        while (nodes to execute) {
            ...
        }
        if (tainted || RXf_TAINTED)
            turn on RXf_TAINTED_SEEN;

This commit changes it to:

    at compile-time;

        if (pattern has locale ops)
            turn on RXf_TAINTED;

    at run-time:

        turn off RXf_TAINTED_SEEN;
        while (nodes to execute) {
            ...
        }
        if (tainted || RXf_TAINTED)
            turn on RXf_TAINTED_SEEN;

6 years agoCorrect v5.19.12-isms in Module-CoreList
Chris 'BinGOs' Williams [Tue, 13 May 2014 09:35:01 +0000 (10:35 +0100)]
Correct v5.19.12-isms in Module-CoreList

6 years agobump the version to 5.20.0-RC0 to start on the road to release!
Ricardo Signes [Tue, 13 May 2014 02:08:53 +0000 (22:08 -0400)]
bump the version to 5.20.0-RC0 to start on the road to release!

6 years agopatchlevel: call it RC0 until RC1
Ricardo Signes [Tue, 13 May 2014 01:46:24 +0000 (21:46 -0400)]
patchlevel: call it RC0 until RC1

6 years agothere are no longer any problems in perldelta for now
Ricardo Signes [Tue, 13 May 2014 01:43:16 +0000 (21:43 -0400)]
there are no longer any problems in perldelta for now

6 years agoreplace 5.19.12 (never happening) with 5.20.0 in corelist
Ricardo Signes [Tue, 13 May 2014 01:19:32 +0000 (21:19 -0400)]
replace 5.19.12 (never happening) with 5.20.0 in corelist

6 years agoresort win32/pod.mak to please pod_rules.t
Ricardo Signes [Tue, 13 May 2014 01:13:01 +0000 (21:13 -0400)]
resort win32/pod.mak to please pod_rules.t

6 years agoadd known modules from perl520delta
Ricardo Signes [Tue, 13 May 2014 01:08:45 +0000 (21:08 -0400)]
add known modules from perl520delta

6 years agoregenerate META.json
Ricardo Signes [Tue, 13 May 2014 01:03:16 +0000 (21:03 -0400)]
regenerate META.json

6 years agoperldelta: correct busted perldiag links
Ricardo Signes [Tue, 13 May 2014 01:00:11 +0000 (21:00 -0400)]
perldelta: correct busted perldiag links

6 years agobump version to 5.20.0, install 5.20 perldelta
Ricardo Signes [Tue, 13 May 2014 00:42:06 +0000 (20:42 -0400)]
bump version to 5.20.0, install 5.20 perldelta

6 years agoperlsub: Fix too-long verbatim line length
Karl Williamson [Mon, 12 May 2014 19:03:05 +0000 (13:03 -0600)]
perlsub: Fix too-long verbatim line length

This was introduced by commit d3f8a934ef964c0f488e9c692275435d8ea2e291
which reverted earlier fixes, including this pod problem.

6 years agoperlapi: Give more accurate value for needed free space
Karl Williamson [Mon, 12 May 2014 18:42:33 +0000 (12:42 -0600)]
perlapi: Give more accurate value for needed free space

When converting to UTF-8, one usually doesn't need 14 bytes available
space, which is what previously was claimed  It acutally depends on the
value being converted.  This change gives the precise value.

6 years agoensure qw//, q'' and '' report line on a missing terminator
Tony Cook [Tue, 6 May 2014 23:33:03 +0000 (09:33 +1000)]
ensure qw//, q'' and '' report line on a missing terminator

scan_str() only sets PL_multi_end on success, but the qw, q amd '' cases
were calling the COPLINE_SET_FROM_MULTI_END; macro before reporting
failure, overwriting the line used for reporting errors.

For the simplest case, as in the ticket and the tests, PL_multi_end is
zero, so the error is reported without a line number.

6 years agoRevert "[perl #79908] Stop sub inlining from breaking closures"
Ævar Arnfjörð Bjarmason [Wed, 7 May 2014 12:09:40 +0000 (12:09 +0000)]
Revert "[perl #79908] Stop sub inlining from breaking closures"

This reverts commit 137da2b05b4b7628115049f343163bdaf2c30dbb. See the
"How about having a recommended way to add constant subs dynamically?"
thread on perl5-porters, specifically while it sucks that we have this
bug, it's been documented to work this way since 5.003 in "Constant
Functions" in perlsub:

    If the result after optimization and constant folding is either a
    constant or a lexically-scoped scalar which has no other references,
    then it will be used in place of function calls made without C<&>

    -- http://perldoc.perl.org/perlsub.html#Constant-Functions

Since we've had this documented bug for a long time we should introduce
this fix in a deprecation cycle rather than silently slowing down code
that assumes it's going to be optimized by constant folding.

I didn't revert the tests it t/op/sub.t, but turned them into TODO tests
instead.

Conflicts:
t/op/sub.t

6 years agoperlsub: Improve the "Constant Functions" documentation
Ævar Arnfjörð Bjarmason [Sat, 10 May 2014 09:26:14 +0000 (09:26 +0000)]
perlsub: Improve the "Constant Functions" documentation

Ever since perl-5.003_95-19-g5431012 which incorporated this patch:

      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

We've documented that "BEGIN { my $x = 1; *X = sub () { $x } }" creates
an inlined subroutine, we just weren't doing so very explicitly. Patch
the documentation so that we now have explicit examples for the behavior
mentioned in the first paragraph of the section.

This also adds an explicit mention of the behavior reported as a bug in
[RT #79908], shows the user that you can just use B::Deparse rather than
relying on a warning to see the effects of inlining, and replaces a
contrived way to avoid inlining with just adding a "return".

While writing these docs I found a bug in the warning behavior mentioned
here, which I filed as [RT #121841]

6 years agoMerge branch 'perldelta' into blead
Ricardo Signes [Mon, 12 May 2014 14:56:58 +0000 (10:56 -0400)]
Merge branch 'perldelta' into blead

6 years agoperldelta: mention the possible doom of EBCDIC
Ricardo Signes [Sun, 11 May 2014 02:58:21 +0000 (22:58 -0400)]
perldelta: mention the possible doom of EBCDIC

6 years agoperldelta: standardize on Americanized spellings
Ricardo Signes [Sun, 11 May 2014 02:56:56 +0000 (22:56 -0400)]
perldelta: standardize on Americanized spellings

one document, one standard

6 years agoperldelta: crosslink to 5.18.0 delta for padrange
Ricardo Signes [Sun, 11 May 2014 02:55:49 +0000 (22:55 -0400)]
perldelta: crosslink to 5.18.0 delta for padrange

6 years agoperldelta: nitpicks
SHIRAKATA Kentaro [Wed, 7 May 2014 20:23:06 +0000 (05:23 +0900)]
perldelta: nitpicks