[perl.git] branch smoke-me/stuff, updated. v5.16.0-132-g540554d
In perl.git, the branch smoke-me/stuff has been updated http://perl5.git.perl.org/perl.git/commitdiff/540554d94ab5831d141f7694e58efcf56cbbe473?hp=12ad17d08c39da074a719b10f502de75eccbaa79 - Log - commit 540554d94ab5831d141f7694e58efcf56cbbe473 Author: Father Chrysostomos spr...@cpan.org Date: Tue May 22 23:54:39 2012 -0700 Increase $ExtUtils::ParseXS::Utilities::VERSION to 3.17 --- Summary of changes: .../lib/ExtUtils/ParseXS/Utilities.pm |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm index c4172d0..0ae1eae 100644 --- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm +++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm @@ -6,7 +6,7 @@ use File::Spec; use lib qw( lib ); use ExtUtils::ParseXS::Constants (); -our $VERSION = '3.16'; +our $VERSION = '3.17'; our (@ISA, @EXPORT_OK); @ISA = qw(Exporter); -- Perl5 Master Repository
[perl.git] branch blead, updated. v5.16.0-189-g1204c818
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/1204c818c5b6fdbe987017df9f2ce0e68463f315?hp=44abc0fa4ee9c5847d874ad63deb4db0d4df8aae - Log - commit 1204c818c5b6fdbe987017df9f2ce0e68463f315 Author: Father Chrysostomos spr...@cpan.org Date: Tue May 22 23:54:39 2012 -0700 Increase $ExtUtils::ParseXS::Utilities::VERSION to 3.17 M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm commit 22016f626ff27be45f1713e6ebfc0468c9b9f95c Author: Father Chrysostomos spr...@cpan.org Date: Tue May 22 22:46:27 2012 -0700 Increase $ExtUtils::ParseXS::VERSION to 3.17 M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm commit 18c03d6f6871990315e784e4ee868ef32ee7bb71 Author: Father Chrysostomos spr...@cpan.org Date: Tue May 22 22:46:05 2012 -0700 ParseXS.pm: Only inc PL_amagic_generation before 5.9 Originally, overload would not oven be checked for if amagic_generation was 0, so it was necessary to do PL_amagic_generation++, in case this was the first class to have over- loading. Ever since perl-5.8.0-87-g439cb1c, PL_amagic_generation++ has been unnecessary, since the boot code for version objects incre- ments it. Furthermore, newXS was already doing PL_sub_generation++ before that, and now does mro_method_changed_in. The code for check- ing the staleness of the overload tables has always checked sub_generation (and, later, the stash-specific generation numbers). M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm commit 6697815661d775deb113dbdbc2e6822d55d3522b Author: Father Chrysostomos spr...@cpan.org Date: Tue May 22 22:22:32 2012 -0700 Excise PL_amagic_generation The core is not using it any more. Every CPAN module that increments it also does newXS, which triggers mro_method_changed_in, which is sufficient; so nothing will break. So, to keep those modules compiling, PL_amagic_generation is now an alias to PL_na outside the core. M embedvar.h M ext/B/B.pm M gv.c M intrpvar.h M perl.h M sv.c commit ce9f52adaabc1b017e07815147af86476576e92d Author: Father Chrysostomos spr...@cpan.org Date: Tue May 22 20:46:52 2012 -0700 op.c: One less func call for newXS newXS calls newXS_flags, which calls newXS_len_flags. This commit makes newXS call the underlying function directly. M op.c commit f7051f2c7bdf0cbc642f2904d5bf8e9e35fdcb3a Author: Father Chrysostomos spr...@cpan.org Date: Tue May 22 20:41:12 2012 -0700 perlfunc: long lines M pod/perlfunc.pod M t/porting/known_pod_issues.dat --- Summary of changes: dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm |4 +- .../lib/ExtUtils/ParseXS/Utilities.pm |2 +- embedvar.h |1 - ext/B/B.pm |2 + gv.c |7 +- intrpvar.h |2 - op.c |4 +- perl.h |4 +- pod/perlfunc.pod | 446 ++-- sv.c |2 - t/porting/known_pod_issues.dat |3 +- 11 files changed, 245 insertions(+), 232 deletions(-) diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm index 883d905..e211081 100644 --- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm +++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm @@ -11,7 +11,7 @@ use Symbol; our $VERSION; BEGIN { - $VERSION = '3.16'; + $VERSION = '3.17'; } use ExtUtils::ParseXS::Constants $VERSION; use ExtUtils::ParseXS::CountLines $VERSION; @@ -949,7 +949,9 @@ EOF print Q(EOF) if ($self-{Overload}); #/* register the overloading (type 'A') magic */ +##if (PERL_REVISION == 5 PERL_VERSION 9) #PL_amagic_generation++; +##endif #/* The magic for overload gets a GV* via gv_fetchmeth as */ #/* mentioned above, and looks in the SV* slot of it for */ #/* the fallback status. */ diff --git a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm index c4172d0..0ae1eae 100644 --- a/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm +++ b/dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm @@ -6,7 +6,7 @@ use File::Spec; use lib qw( lib ); use ExtUtils::ParseXS::Constants (); -our $VERSION = '3.16'; +our $VERSION = '3.17'; our (@ISA, @EXPORT_OK); @ISA = qw(Exporter); diff --git a/embedvar.h b/embedvar.h index 24d99e9..c4a0fa9 100644 --- a/embedvar.h +++ b/embedvar.h @@ -95,7 +95,6 @@ #define PL_XPosixSpace
[perl.git] branch blead, updated. v5.16.0-190-g3866ea3
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/3866ea3be51f0998b848d22c4ef960965bda7199?hp=1204c818c5b6fdbe987017df9f2ce0e68463f315 - Log - commit 3866ea3be51f0998b848d22c4ef960965bda7199 Author: Father Chrysostomos spr...@cpan.org Date: Wed May 23 01:05:20 2012 -0700 [perl #113050] Put fallback back under () Unfortunately, there is code all over CPAN that assumes fallback is stored under the () stash entry. And that code also assumes that the overloadedness flag (the existence of the CV) is in the same spot. So much for encapsulation. This commit changes overloading itself to use a different key, ((, while having it search for () first, and then (( only if () is not found, to preserve compatibility with encapsulation-breaking code. So the (( key will only be used by gv.c if there is no fallback value specified at all. --- Summary of changes: gv.c| 26 +++--- lib/overload.pm |9 + lib/overload.t | 13 - 3 files changed, 28 insertions(+), 20 deletions(-) diff --git a/gv.c b/gv.c index 8248bfe..58025b3 100644 --- a/gv.c +++ b/gv.c @@ -2260,31 +2260,27 @@ Perl_Gv_AMupdate(pTHX_ HV *stash, bool destructing) int filled = 0, have_ovl = 0; int i, lim = 1; -/* The first key in PL_AMG_names is the overloadedness indicator, which - allows us to skip overloading entries for non-overloaded classes. */ +/* Work with fallback key, which we assume to be first in PL_AMG_names */ /* Try to find via inheritance. */ GV *gv = gv_fetchmeth_pvn(stash, PL_AMG_names[0], 2, -1, 0); +SV * const sv = gv ? GvSV(gv) : NULL; CV* cv; if (!gv) +{ + if (!gv_fetchmeth_pvn(stash, ((, 2, -1, 0)) lim = DESTROY_amg; /* Skip overloading entries. */ - -else { - - /* The fallback key is special-cased here, being absent from the -list in PL_AMG_names. */ - - SV *sv; - gv = gv_fetchmeth_pvn(stash, (fallback, 9, -1, 0); - - if (!gv || !(sv = GvSV(gv))) +} +#ifdef PERL_DONT_CREATE_GVSV +else if (!sv) { NOOP; /* Equivalent to !SvTRUE and !SvOK */ - else if (SvTRUE(sv)) +} +#endif +else if (SvTRUE(sv)) amt.fallback=AMGfallYES; - else if (SvOK(sv)) +else if (SvOK(sv)) amt.fallback=AMGfallNEVER; -} for (i = 1; i lim; i++) amt.table[i] = NULL; diff --git a/lib/overload.pm b/lib/overload.pm index ed69440..c1eefc0 100644 --- a/lib/overload.pm +++ b/lib/overload.pm @@ -31,10 +31,10 @@ sub OVERLOAD { $package = shift; my %arg = @_; my ($sub, $fb); - *{$package . ::()} = \nil; # Make it findable via fetchmethod. + *{$package . ::((} = \nil; # Make it findable via fetchmethod. for (keys %arg) { if ($_ eq 'fallback') { - for my $sym (*{$package . ::(fallback}) { + for my $sym (*{$package . ::()}) { *$sym = \nil; # Make it findable via fetchmethod. $$sym = $arg{$_}; } @@ -62,17 +62,18 @@ sub import { sub unimport { $package = (caller())[0]; shift; + *{$package . ::((} = \nil; for (@_) { warnings::warnif(overload arg '$_' is invalid) unless $ops_seen{$_}; - delete $ {$package . ::}{( . $_}; + delete $ {$package . ::}{$_ eq 'fallback' ? '()' : ( .$_}; } } sub Overloaded { my $package = shift; $package = ref $package if ref $package; - mycan ($package, '()'); + mycan ($package, '()') || mycan ($package, '(('); } sub ov_method { diff --git a/lib/overload.t b/lib/overload.t index df3a9b8..72e3b6e 100644 --- a/lib/overload.t +++ b/lib/overload.t @@ -48,7 +48,7 @@ package main; $| = 1; BEGIN { require './test.pl' } -plan tests = 5081; +plan tests = 5082; use Scalar::Util qw(tainted); @@ -2313,6 +2313,17 @@ $a = bless[], mane::; is eval { $a }, 'twine', ':: in method name' or diag $@; is eval { !$a }, 1, ' in method name or diag $@; +# [perl #113050] Half of CPAN assumes fallback is under () +{ + package dodo; + use overload '+' = sub {}; + no strict; + *{dodo::()} = sub{}; + ${dodo::()} = 1; +} +$a = bless [],'dodo'; +is eval {$a}, overload::StrVal($a), 'fallback is stored under ()'; + { # undefining the overload stash -- KEEP THIS TEST LAST package ant; -- Perl5 Master Repository
[perl.git] branch smoke-me/leont/sane_eof3, created. v5.16.0-150-g5ead793
In perl.git, the branch smoke-me/leont/sane_eof3 has been created http://perl5.git.perl.org/perl.git/commitdiff/5ead7931b9a18cc9de14672c117eeca173d4e75a?hp= at 5ead7931b9a18cc9de14672c117eeca173d4e75a (commit) - Log - commit 5ead7931b9a18cc9de14672c117eeca173d4e75a Author: Leon Timmermans faw...@gmail.com Date: Thu May 3 15:46:07 2012 +0200 Unify eof() implementations into consistency, where possible Give layers a sensible eof if possible, revert to old behavior otherwise --- -- Perl5 Master Repository
[perl.git] branch smoke-me/leont/sane_eof3, deleted. v5.16.0-153-g8ee4582
In perl.git, the branch smoke-me/leont/sane_eof3 has been deleted http://perl5.git.perl.org/perl.git/commitdiff/?hp=8ee458245c464547c0aa6e9c14fa486a3f1757f6 was 8ee458245c464547c0aa6e9c14fa486a3f1757f6 --- 8ee458245c464547c0aa6e9c14fa486a3f1757f6 Merge branch 'sane_eof3' of alive.bio.uu.nl:Code/perl into sane_eof3 --- -- Perl5 Master Repository
[perl.git] branch blead, updated. v5.16.0-193-g35bb012
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/35bb012088df9f7586da9a62c90f3dd3ef609cad?hp=3866ea3be51f0998b848d22c4ef960965bda7199 - Log - commit 35bb012088df9f7586da9a62c90f3dd3ef609cad Merge: 3866ea3 5f9f83b Author: Rafael Garcia-Suarez r...@consttype.org Date: Wed May 23 15:53:31 2012 +0200 Merge branch 'rgs/overload' into blead --- Summary of changes: gv.c | 13 ++--- lib/overload.t |2 +- lib/unicore/mktables |3 ++- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/gv.c b/gv.c index 58025b3..f75b76a 100644 --- a/gv.c +++ b/gv.c @@ -2733,9 +2733,16 @@ Perl_amagic_call(pTHX_ SV *left, SV *right, int method, int flags) (cvp = (AMT_AMAGIC((AMT*)mg-mg_ptr) ? (amtp = (AMT*)mg-mg_ptr)-table : NULL)) - (cv = cvp[off=method])) { /* Method for right -* argument found */ - lr=1; + ((cv = cvp[off=method+assignshift]) + || (assign amtp-fallback AMGfallNEVER /* fallback to + * usual method */ + ( +#ifdef DEBUGGING + fl = 1, +#endif + cv = cvp[off=method] { /* Method for right + * argument found */ + lr=1; } else if (((cvp amtp-fallback AMGfallNEVER) || (ocvp oamtp-fallback AMGfallNEVER)) !(flags AMGf_unary)) { diff --git a/lib/overload.t b/lib/overload.t index 72e3b6e..87845b1 100644 --- a/lib/overload.t +++ b/lib/overload.t @@ -202,7 +202,7 @@ is($b, 89); is(ref $a, Oscalar); is($copies, 1); -eval q[package Oscalar; use overload ('+=' = sub {$ {$_[0]} += 3*$_[1]; +eval q[package Oscalar; use overload ('+=' = sub {$ {$_[0]} += 3*$_[1]; $_[0] } ) ]; $c=new Oscalar;# Cause rehash diff --git a/lib/unicore/mktables b/lib/unicore/mktables index ab029e4..4018e95 100644 --- a/lib/unicore/mktables +++ b/lib/unicore/mktables @@ -12882,9 +12882,10 @@ END Type = $ENUM, Initialize = $age, ); +my $q_in = $in; $in-add_comment(join_lines(END THIS FILE SHOULD NOT BE USED FOR ANY PURPOSE. The values in this file are the -same as for $age, and not for what $in really means. This is because anything +same as for $age, and not for what $q_in really means. This is because anything defined in a given release should have multiple values: that release and all higher ones. But only one value per code point can be represented in a table like this. -- Perl5 Master Repository
[perl.git] branch rgs/overload, deleted. v5.16.0-150-g5f9f83b
In perl.git, the branch rgs/overload has been deleted http://perl5.git.perl.org/perl.git/commitdiff/?hp=5f9f83be9cdcd54449f7f40db078fe367d780475 was 5f9f83be9cdcd54449f7f40db078fe367d780475 --- 5f9f83be9cdcd54449f7f40db078fe367d780475 Fix mktables bug due to the previous overload fix --- -- Perl5 Master Repository
[perl.git] branch smoke-me/leont/safe-utf8, deleted. v5.15.9-129-g0aa66ef
In perl.git, the branch smoke-me/leont/safe-utf8 has been deleted http://perl5.git.perl.org/perl.git/commitdiff/?hp=0aa66ef1d77c1bf3e7064d2d751203bfe2d9ece0 was 0aa66ef1d77c1bf3e7064d2d751203bfe2d9ece0 --- 0aa66ef1d77c1bf3e7064d2d751203bfe2d9ece0 Use integers more carefully --- -- Perl5 Master Repository
[perl.git] branch smoke-me/leont/safe-utf8, created. v5.16.0-157-gae8c226
In perl.git, the branch smoke-me/leont/safe-utf8 has been created http://perl5.git.perl.org/perl.git/commitdiff/ae8c226dd76d2f6fcca8b6d4c9d13d3d5b1fa41d?hp= at ae8c226dd76d2f6fcca8b6d4c9d13d3d5b1fa41d (commit) - Log - commit ae8c226dd76d2f6fcca8b6d4c9d13d3d5b1fa41d Author: Leon Timmermans faw...@gmail.com Date: Wed May 23 18:24:43 2012 +0200 Fix buffering issue on top of non-peeking layers M perlio.c commit 5268a6d9e88f50c5ae3e9acf00f37c27f1c563d8 Author: Leon Timmermans faw...@gmail.com Date: Tue May 22 23:08:48 2012 +0200 Be more constent about enums M perlio.c commit 71aef57f7a7d7d7469a25b28ebe7a20b9056b027 Author: Leon Timmermans faw...@gmail.com Date: Wed Apr 11 11:48:49 2012 +0200 Use integers more carefully M perlio.c commit 8fed19890d9a27f411b94d95152a73c39ff9b827 Author: Leon Timmermans faw...@gmail.com Date: Tue Apr 10 22:00:59 2012 +0200 Add context to pop in :bytes M perlio.c commit f7eed95508f64f1f465c725a57fe14b49447cc8b Author: Leon Timmermans faw...@gmail.com Date: Mon Apr 9 21:49:11 2012 +0200 Made :utf8 an actual layer It will check the input for validity, by default strict validity though less strict forms are provided. This also means PerlIO::get_layers doesn't return a utf8 pseudo-layer anymore, which can break some code making that assumption. M lib/PerlIO.pm M perlio.c M perliol.h M pod/perldiag.pod M pod/perlfunc.pod M pod/perliol.pod M pod/perlrun.pod M pod/perlunifaq.pod M pod/perluniintro.pod M t/io/crlf.t M t/io/layers.t M t/io/utf8.t M universal.c commit 5ef1dfdb62ad9dfc4ca82548deefed1ecb87632b Author: Leon Timmermans faw...@gmail.com Date: Mon Apr 9 11:03:02 2012 +0200 Make :bytes actually pop off non-byte layers M lib/PerlIO.pm M perlio.c commit 4d9653586a77858b33608ae05624693a8cf7c3b5 Author: Leon Timmermans faw...@gmail.com Date: Mon Apr 9 10:27:53 2012 +0200 Fix podlators to check for unicode layers correctly This patch really should go through upstream first M cpan/podlators/lib/Pod/Man.pm M cpan/podlators/lib/Pod/Text.pm commit ed98af999b664d76a66f8928485ef326f9ef4f05 Author: Leon Timmermans faw...@gmail.com Date: Sun Jul 3 15:03:43 2011 +0200 Deprecate PERLIO_K_DUMMY as it doesn't do anything In fact, it hasn't done anything for like a decade M perlio.c M perliol.h --- -- Perl5 Master Repository
[perl.git] branch blead, updated. v5.16.0-201-g7409049
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/74090492482072d50f5959166691cb46c3cc780c?hp=35bb012088df9f7586da9a62c90f3dd3ef609cad - Log - commit 74090492482072d50f5959166691cb46c3cc780c Author: Karl Williamson pub...@khwilliamson.com Date: Wed May 23 17:14:36 2012 -0600 mktables: Handle typo in Unicode 6.1 data file Unicode has published a correction to their data files for version 6.1. This patch applies that correction. M lib/Unicode/UCD.t M lib/unicore/mktables commit 7881e901b6bb688f23c76851cb304a74052929ea Author: Karl Williamson pub...@khwilliamson.com Date: Wed May 23 17:01:11 2012 -0600 Revert Fix mktables bug due to the previous overload fix mktables had unknowingly been relying on a bug in the overloading code. That bug was fixed by commit f041cf0f9c6469c41de8b73d5f7b426710c3ff8b. Commit 5f9f83be9cdcd54449f7f40db078fe367d780475 is a minimal commit to get mktables to pass its tests as a result of the fixed bug. However, it did not address the underlying problem, which doesn't show up in the typical tests, but does occur when tracing is added or things go wrong and mktables tries to output any of a number of messages, which fail because there is no .= operator. A previous commit added the proper overloaded .=, and so this one is no longer needed, and would be confusing to someone who doesn't know the history. M lib/unicore/mktables commit 556ca4348d274f46888ad16cfb43fb2b7a3129b9 Author: Karl Williamson pub...@khwilliamson.com Date: Thu Apr 19 12:25:08 2012 -0600 mktables: Add sanity check Since mktables works only on Unicode code points so far, a range outside that space is probably erroneous. Raise a warning M lib/unicore/mktables commit 1285127e601d14da808e2a7afcf2326fe7336bad Author: Karl Williamson pub...@khwilliamson.com Date: Mon Apr 16 11:32:43 2012 -0600 mktables: Add overloaded .= This was automatically getting generated due to a bug in perl which ignored fallback=0, but that has been fixed by commit f041cf0f9c6469c41de8b73d5f7b426710c3ff8b, so we have to have our own operator. M lib/unicore/mktables commit 5bfb176298d0c97bf748d42cb50b0b40fa236b70 Author: Karl Williamson pub...@khwilliamson.com Date: Mon Apr 16 11:31:50 2012 -0600 mktables: Add error check += is not a commutative operator, and so the overloaded version should not accept the parameters being swapped. M lib/unicore/mktables commit e76a8d86080608c53d4b0c32fc24294735958678 Author: Karl Williamson pub...@khwilliamson.com Date: Mon Apr 16 11:28:20 2012 -0600 mktables: Add overloaded '+=' This was automatically generated before, in spite of fallback = 0, but that has now been fixed by commit f041cf0f9c6469c41de8b73d5f7b426710c3ff8b. However, that change caused another overloaded += to be used with the parameters swapped, resulting in the table generated for Gc=Cs (the surrogates) to be wrong. This creates the proper overload. M lib/unicore/mktables commit 84d2ce66f95caecdadf311bc8c60c299e0b5f043 Author: Karl Williamson pub...@khwilliamson.com Date: Mon Mar 26 22:20:59 2012 -0600 podcheck.t: Try harder to avoid transitory failure It may be that a file that looks like a pod is transitory. podcheck.t catches and handles some of these, but there are cases where it doesn't catch these. This commit adds code to try harder to detect such instances and recover properly. I know of two instances in the months since this code has been in service where this has happened, so it's not a common occurrence, and re-running it makes the failure go away. Still, if it can be easily avoided, do so. M t/porting/podcheck.t commit c66a5b89dc20f73ffa192444cde91b3441d37cb7 Author: Karl Williamson pub...@khwilliamson.com Date: Mon Mar 26 22:18:01 2012 -0600 podcheck.t: Add label to 'next' stmts for clarity M t/porting/podcheck.t --- Summary of changes: lib/Unicode/UCD.t|3 ++ lib/unicore/mktables | 57 ++- t/porting/podcheck.t | 59 ++--- 3 files changed, 103 insertions(+), 16 deletions(-) diff --git a/lib/Unicode/UCD.t b/lib/Unicode/UCD.t index 638a1d8..2e5a741 100644 --- a/lib/Unicode/UCD.t +++ b/lib/Unicode/UCD.t @@ -708,6 +708,9 @@ while ($propvalues) { next if /^\s* $/x;# Ignore empty and comment lines chomp; +# Fix typo in official input file +s/CCC133/CCC132/g if $version eq 6.1.0; + my @fields = split /\s*;\s*/; # Fields are separated by semi-colons my $prop = shift @fields; # 0th field is the property, my $count = 0; # 0th
[perl.git] branch book/perlsecret, updated. v5.15.9-74-gd7687a6
In perl.git, the branch book/perlsecret has been updated http://perl5.git.perl.org/perl.git/commitdiff/d7687a636786920bcec85500cf327d41e7489291?hp=f694a1f432c26d858a6b31e2600414f70d4873fb - Log - commit d7687a636786920bcec85500cf327d41e7489291 Author: Philippe Bruhat (BooK) b...@cpan.org Date: Thu May 24 02:15:18 2012 +0200 make perlsecret.pod safe for work --- Summary of changes: pod/perlsecret.pod | 31 +-- 1 files changed, 17 insertions(+), 14 deletions(-) diff --git a/pod/perlsecret.pod b/pod/perlsecret.pod index 4a27995..21895e5 100644 --- a/pod/perlsecret.pod +++ b/pod/perlsecret.pod @@ -18,7 +18,7 @@ Perl secret operators: ~- Inchworm on a stick high-precedence decrement -~ Inchworm on a stick high-precedence increment -+- Space station high-precedence numification -=( )= Goatse scalar / list context +=( )= Saturn scalar / list context = =~ Flaming X-Wing match input, assign captures ~~Kitea single line of input m=~m m; Ornate double-bladed sword multiline comment @@ -351,14 +351,11 @@ In the above example, C-+- '-2B' produces the string C'-2B', whereas C0+ '-2B' would have given the expected number (C-2). -=head2 Goatse C =( )= +=head2 Saturn C =( )= -(Alternate nickname: Saturn) +(Alternate nickname: INSFW) -If you don't understand the name of this operator, consider yourself lucky. -You are advised Bnot to search the Internet for a visual explanation. - -The goatse operator provides a list context to its right side and +The Saturn operator provides a list context to its right side and returns the number of elements to its left side. The explanation is that a list assignment in scalar context returns the @@ -376,7 +373,11 @@ case, all the elements on the right are simply assigned to an empty list # $n = 4 $n =()= abababab =~ /a/g; -The goatse operator is a container (sic), so it can also be used to +In that last example, the match is +global on C/a/ to select every +letter Ca in the string: they will be dropped, but counted. + +This operator is a container (sic), so it can also be used to assign values from the right-hand side to the variables inside it. # $n = 4; $b = 'a' @@ -455,17 +456,18 @@ This operator is also a container. So the X-Wing can have a pilot! =head2 Kite C ~~ Discovered by Philippe Bruhat, 2012. -(Alternate nickname: sperm) +(Alternate nickname: INSFW) This operator is actually a combination of the inchworm and the diamond operator. It provides scalar context to the Creadline() builtin, thus returning a single line of input. It's only useful in list context (since C already returns a -single line of input in scalar and void contexts), for example for getting -several lines at once: +single line of input in scalar and void contexts); so, this +short practical example returns multiple +(but not all) lines at once: -@triplets = ( ~~, ~~, ~~ );# three sperms in a single egg? +@triplets = ( ~~, ~~, ~~ ); Like the other operators based on bracketing constructs, the kite is a container, and can carry a payload (a file handle, in this case). @@ -685,11 +687,12 @@ by Aristotle Pagaltzis, describes the Enterprise operator. =item Lhttp://www.nntp.perl.org/group/perl.fwp/2012/03/msg4169.html -Description of the sperm/kite operator. +Description of the kite operator. Dmitry Karasik proposed a name that +is better suited than the original proposal, and safer for work. =item Lhttp://www.nntp.perl.org/group/perl.fwp/2012/04/msg4192.html -Proposal for an alternate, family-friendly, nickname for the goatse +Proposal for an alternate, family-friendly, nickname for the C=()= operator, with a second order inside joke. =back -- Perl5 Master Repository
[perl.git] branch blead, updated. v5.16.0-204-g21361d0
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/21361d0729743e699b2954b542f05a2e4eabd980?hp=74090492482072d50f5959166691cb46c3cc780c - Log - commit 21361d0729743e699b2954b542f05a2e4eabd980 Author: Marcus Holland-Moritz mhx-p...@gmx.net Date: Wed May 23 14:50:31 2012 -0700 [perl #60204] Unhelpful error message from unpack Nigel Sandever said: The error message produced by the following snippets is very unhelpful: c:\perl -wleprint unpack 'v/a*', qq[a] '/' must follow a numeric type in unpack at -e line 1. c:\perl -wleprint unpack 'v/a*', '' '/' must follow a numeric type in unpack at -e line 1. c:\perl -wleprint unpack 'v/a*', ' ' '/' must follow a numeric type in unpack at -e line 1. The problem is that the data string is too short. But unpack doesn't generate a warning (or croak) in this case for simple patterns: mhx@r2d2 $ perl -MData::Dumper -we'print Dumper([unpack n, a])' $VAR1 = []; So, I'd say your code should just behave in exactly the same way. No warning, no return values. M pp_pack.c M t/op/pack.t commit 909564a7d63dd41ca03b7bc9659d8c7b695220d2 Author: Father Chrysostomos spr...@cpan.org Date: Wed May 23 13:42:09 2012 -0700 Correct perldelta entry for fallback entry M pod/perldelta.pod commit 9976fb3d66ff0a06415aa7b57ed8ac4418b86b4b Author: Father Chrysostomos spr...@cpan.org Date: Wed May 23 13:17:17 2012 -0700 perldelta for PL_amagic_generation removal M pod/perldelta.pod --- Summary of changes: pod/perldelta.pod | 10 -- pp_pack.c |2 +- t/op/pack.t | 12 ++-- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/pod/perldelta.pod b/pod/perldelta.pod index abfc498..2b50da1 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -361,13 +361,11 @@ are invoked, rather than during Cbless. A magic is gone. The changes to the handling of the CSVf_AMAGIC flag eliminate the need for it. -The core no longer increments CPL_amagic_generation (it doesn't need to). -But an XS module can still increment it to mark all overload tables as -stale. (It is still not part of the API, though.) Do not rely on this. -It may be deleted in the next release. +CPL_amagic_generation has been removed as no longer necessary. For XS +modules, it is now a macro alias to CPL_na. -The fallback overload setting is now stored in its own stash entry, called -(fallback. +The fallback overload setting is now stored in a stash entry separate from +overloadedness itself. =back diff --git a/pp_pack.c b/pp_pack.c index 71dc22d..9f1c83a 100644 --- a/pp_pack.c +++ b/pp_pack.c @@ -2234,7 +2234,7 @@ S_unpack_rec(pTHX_ tempsym_t* symptr, const char *s, const char *strbeg, const c if (symptr-flags FLAG_SLASH){ if (SP - PL_stack_base - start_sp_offset = 0) -Perl_croak(aTHX_ '/' must follow a numeric type in unpack); + break; if( next_symbol(symptr) ){ if( symptr-howlen == e_number ) Perl_croak(aTHX_ Count after length/code in unpack ); diff --git a/t/op/pack.t b/t/op/pack.t index 43189ab..34097ad 100644 --- a/t/op/pack.t +++ b/t/op/pack.t @@ -12,7 +12,7 @@ my $no_endianness = $] 5.009 ? '' : my $no_signedness = $] 5.009 ? '' : Signed/unsigned pack modifiers not available on this perl; -plan tests = 14700; +plan tests = 14704; use strict; use warnings qw(FATAL all); @@ -816,13 +816,21 @@ SKIP: { { # / - my ($x, $y, $z); + my ($x, $y, $z, @a); eval { ($x) = unpack '/a*','hello' }; like($@, qr!'/' must follow a numeric type!); undef $x; eval { $x = unpack '/a*','hello' }; like($@, qr!'/' must follow a numeric type!); + # [perl #60204] Unhelpful error message from unpack + eval { @a = unpack 'v/a*','h' }; + is($@, ''); + is(scalar @a, 0); + eval { $x = unpack 'v/a*','h' }; + is($@, ''); + is($x, undef); + undef $x; eval { ($z,$x,$y) = unpack 'a3/A C/a* C/Z', 003ok \003yes\004z\000abc }; is($@, ''); -- Perl5 Master Repository
[perl.git] branch blead, updated. v5.16.0-205-g1e4aa4a
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/1e4aa4a587074e54fbb78449b8d9262e220217ca?hp=21361d0729743e699b2954b542f05a2e4eabd980 - Log - commit 1e4aa4a587074e54fbb78449b8d9262e220217ca Author: Aristotle Pagaltzis pagalt...@gmx.de Date: Wed May 23 18:12:43 2012 -0700 [perl #112522] Mildly incorrect wording in perldoc perlre --- Summary of changes: pod/perlre.pod |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pod/perlre.pod b/pod/perlre.pod index b69c359..9c5c3ad 100644 --- a/pod/perlre.pod +++ b/pod/perlre.pod @@ -31,8 +31,8 @@ Lperlop/Gory details of parsing quoted constructs. X/m Xregex, multiline Xregexp, multiline Xregular expression, multiline Treat string as multiple lines. That is, change ^ and $ from matching -the start or end of the string to matching the start or end of any -line anywhere within the string. +the start or end of line only at the left and right ends of the string to +matching them anywhere within the string. =item s X/s Xregex, single-line Xregexp, single-line -- Perl5 Master Repository
[perl.git] branch blead, updated. v5.16.0-207-gec36440
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/ec36440ecf561a8bd3730f55ec9e410ac7a9f302?hp=1e4aa4a587074e54fbb78449b8d9262e220217ca - Log - commit ec36440ecf561a8bd3730f55ec9e410ac7a9f302 Author: Father Chrysostomos spr...@cpan.org Date: Wed May 23 18:19:56 2012 -0700 Add another address for Ronald Kimball to checkAUTHORS.pl M Porting/checkAUTHORS.pl commit c77257ed0e74a0f687e15e3114b395bb273c5b2f Author: Ronald J Kimball r...@tamias.net Date: Wed May 23 18:17:16 2012 -0700 [perl #112604] perlre man page contains suspect example of recursion Jim Avera wrote: This seems incorrect because the \s++ eats all white space without backtracking, preventing the following \s+ from matching. Thus the pattern always fails for any input. It should be \s+ \+ \s+ M pod/perlre.pod --- Summary of changes: Porting/checkAUTHORS.pl |1 + pod/perlre.pod |2 +- 2 files changed, 2 insertions(+), 1 deletions(-) diff --git a/Porting/checkAUTHORS.pl b/Porting/checkAUTHORS.pl index a4e77fb..6c22a49 100755 --- a/Porting/checkAUTHORS.pl +++ b/Porting/checkAUTHORS.pl @@ -802,6 +802,7 @@ rjbs\100cpan.org rjbs-perl-p5p\100lists.manxome.org + perl.p5p\100rjbs.manxome.org rjk\100linguist.dartmouth.edu rjk\100linguist.thayer.dartmouth.edu + rjk-perl-p5p\100tamias.net ++ rjk\100tamias.net rjray\100redhat.com rjray\100uswest.com rmgiroux\100acm.org rmgiroux\100hotmail.com + mgiroux\100bear.com diff --git a/pod/perlre.pod b/pod/perlre.pod index 9c5c3ad..b4bb45e 100644 --- a/pod/perlre.pod +++ b/pod/perlre.pod @@ -1453,7 +1453,7 @@ easier to embed recursive patterns inside of a Cqr// construct for later use: my $parens = qr/(\((?:[^()]++|(?-1))*+\))/; -if (/foo $parens \s+ + \s+ bar $parens/x) { +if (/foo $parens \s+ \+ \s+ bar $parens/x) { # do something here... } -- Perl5 Master Repository
[perl.git] branch smoke-me/stuff, deleted. v5.16.0-132-g540554d
In perl.git, the branch smoke-me/stuff has been deleted http://perl5.git.perl.org/perl.git/commitdiff/?hp=540554d94ab5831d141f7694e58efcf56cbbe473 was 540554d94ab5831d141f7694e58efcf56cbbe473 --- 540554d94ab5831d141f7694e58efcf56cbbe473 Increase $ExtUtils::ParseXS::Utilities::VERSION to 3.17 --- -- Perl5 Master Repository
[perl.git] branch blead, updated. v5.16.0-208-g9aa9a88
In perl.git, the branch blead has been updated http://perl5.git.perl.org/perl.git/commitdiff/9aa9a8882056ff874c474002548b48c19610592f?hp=ec36440ecf561a8bd3730f55ec9e410ac7a9f302 - Log - commit 9aa9a8882056ff874c474002548b48c19610592f Author: Karl Williamson pub...@khwilliamson.com Date: Wed May 23 20:30:17 2012 -0600 Add perldelta for Unicode CCC132 fix --- Summary of changes: pod/perldelta.pod |7 +++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 2b50da1..cbc32ef 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -460,6 +460,13 @@ Creadline and Creaddir. Subs in the CORE:: namespace no longer crash after Cundef *_ when called with no argument list (CCORE::time with no parentheses). +=item * + +Unicode 6.1 published an incorrect alias for one of the +Canonical_Combining_Class property's values (which range between 0 and +254). The alias 133 should have been 132. Perl now +overrides the data file furnished by Unicode to give the correct value. + =back =head1 Known Problems -- Perl5 Master Repository
[perl.git] branch sprout/misc-post-5.16, deleted. v5.16.0-47-g9de509c
In perl.git, the branch sprout/misc-post-5.16 has been deleted http://perl5.git.perl.org/perl.git/commitdiff/?hp=9de509ceabc47f6ba900fcdf73a1422b5f4abd84 was 9de509ceabc47f6ba900fcdf73a1422b5f4abd84 --- 9de509ceabc47f6ba900fcdf73a1422b5f4abd84 Donât stringify GV in numeric cx outside warnings scope --- -- Perl5 Master Repository
[perl.git] branch tonyc/vec64, deleted. v5.15.9-30-ga7e5d7e
In perl.git, the branch tonyc/vec64 has been deleted http://perl5.git.perl.org/perl.git/commitdiff/?hp=a7e5d7ea654290f277d4ffd30cfcaf087e68aa53 was a7e5d7ea654290f277d4ffd30cfcaf087e68aa53 --- a7e5d7ea654290f277d4ffd30cfcaf087e68aa53 [rt #111730] don't use I32 for offsets in vec() --- -- Perl5 Master Repository
[perl.git] branch tonyc/cpan61577, deleted. v5.15.9-282-g02ba731
In perl.git, the branch tonyc/cpan61577 has been deleted http://perl5.git.perl.org/perl.git/commitdiff/?hp=02ba731fff26361dc52e40449ecce77b26700db0 was 02ba731fff26361dc52e40449ecce77b26700db0 --- 02ba731fff26361dc52e40449ecce77b26700db0 sometimes fork() isn't available --- -- Perl5 Master Repository