perl.perl5.changes http://www.nntp.perl.org/group/perl.perl5.changes/ ... Copyright 1998-2016 perl.org Mon, 27 Jun 2016 14:32:04 +0000 ask@perl.org [perl.git] branch blead, updated. v5.25.2-53-g36efb5a by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/36efb5a67d73cc824ada76aaa2e3b03bda5cdc60?hp=f4484b87a82daea7be100df3744515a1bdd437a1&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 36efb5a67d73cc824ada76aaa2e3b03bda5cdc60<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Mon Jun 27 14:56:09 2016 +0100<br/><br/> S_lvref() OP_[AH]SLICE =&gt; OP_LVREFSLICE flag issue<br/> <br/> RT #128252 Assert fail in op.c<br/> <br/> In S_lvref(), when it&#39;s converting an OP_ASLICE or OP_HSLICE into a<br/> OP_LVREFSLICE op, it clears all private flags except those supported by<br/> both ops. Except that it got it wrong. OPpLVREF_ELEM isn&#39;t a valid flag<br/> for OP_[AH]SLICE (that bit corresponds to OPpSLICEWARNING for [ah]slice)<br/> and that bit isn&#39;t valid for OP_LVREFSLICE. So don&#39;t preserve that bit.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> op.c | 2 +-<br/> 1 file changed, 1 insertion(+), 1 deletion(-)<br/><br/>diff --git a/op.c b/op.c<br/>index 8008a21..fccb5f6 100644<br/>--- a/op.c<br/>+++ b/op.c<br/>@@ -2744,7 +2744,7 @@ S_lvref(pTHX_ OP *o, I32 type)<br/> case OP_ASLICE:<br/> case OP_HSLICE:<br/> OpTYPE_set(o, OP_LVREFSLICE);<br/>- o-&gt;op_private &amp;= OPpLVAL_INTRO|OPpLVREF_ELEM;<br/>+ o-&gt;op_private &amp;= OPpLVAL_INTRO;<br/> return;<br/> case OP_NULL:<br/> if (o-&gt;op_flags &amp; OPf_SPECIAL) /* do BLOCK */<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47511.html Mon, 27 Jun 2016 14:01:55 +0000 [perl.git] branch blead, updated. v5.25.2-52-gf4484b8 by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/f4484b87a82daea7be100df3744515a1bdd437a1?hp=d9d2b74cf46ffb7cc5b88cb749f8cb8dee21425e&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit f4484b87a82daea7be100df3744515a1bdd437a1<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Mon Jun 27 07:58:01 2016 +0100<br/><br/> pp_aelemfast: always extend stack<br/> <br/> my previous commit split pp_aelemfast() into two branches; but the<br/> new branch wasn&#39;t extending the stack before pushing the result.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> pp_hot.c | 3 ++-<br/> 1 file changed, 2 insertions(+), 1 deletion(-)<br/><br/>diff --git a/pp_hot.c b/pp_hot.c<br/>index 9c547d4..ca90c1e 100644<br/>--- a/pp_hot.c<br/>+++ b/pp_hot.c<br/>@@ -825,6 +825,8 @@ PP(pp_aelemfast)<br/> <br/> assert(SvTYPE(av) == SVt_PVAV);<br/> <br/>+ EXTEND(SP, 1);<br/>+<br/> /* inlined av_fetch() for simple cases ... */<br/> if (!SvRMAGICAL(av) &amp;&amp; key &gt;= 0 &amp;&amp; key &lt;= AvFILLp(av)) {<br/> sv = AvARRAY(av)[key];<br/>@@ -841,7 +843,6 @@ PP(pp_aelemfast)<br/> if (UNLIKELY(!svp &amp;&amp; lval))<br/> DIE(aTHX_ PL_no_aelem, (int)key);<br/> <br/>- EXTEND(SP, 1);<br/> if (!lval &amp;&amp; SvRMAGICAL(av) &amp;&amp; SvGMAGICAL(sv)) /* see note in pp_helem() */<br/> mg_get(sv);<br/> PUSHs(sv);<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47510.html Mon, 27 Jun 2016 13:51:13 +0000 [perl.git] branch blead, updated. v5.25.2-51-gd9d2b74 by Father Chrysostomos In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/d9d2b74cf46ffb7cc5b88cb749f8cb8dee21425e?hp=f9296ff3414b48d19cfd16e067e4be4cf6a6be73&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit d9d2b74cf46ffb7cc5b88cb749f8cb8dee21425e<br/>Author: Father Chrysostomos &lt;sprout@cpan.org&gt;<br/>Date: Sun Jun 26 21:45:22 2016 -0700<br/><br/> [perl #128478] Restore former &quot;$foo::$bar&quot; parsing<br/> <br/> The function scan_word, in toke.c, is used to parse barewords. The<br/> scan_ident function is used to scan an identifier after a sigil.<br/> <br/> Prior to v5.17.9-108-g07f7264, both functions had their own parsing<br/> loops, and scan_ident actually had two, one for $foo and another<br/> for ${foo}.<br/> <br/> The state purpose of 07f7264 was to fix discrepancies in the parsing<br/> of $foo vs ${foo}, by making the two forms use the same parsing code.<br/> In accomplishing this, the commit in question merged not only the<br/> two loops in scan_ident, but all three loops, including the one in<br/> scan_word, by introducing a new function, parse_ident, that the<br/> others call.<br/> <br/> One result was that some logic appropriate only to scan_word started<br/> to be applied also to scan_ident; namely, that ::$ would be explicitly<br/> checked for and disallowed (the parsing would stop before the ::), for<br/> the sake of the &acirc;&#128;&#156;Bad name after Foo::&acirc;&#128;&#157; error.<br/> <br/> The consequence was that &quot;$foo::$bar&quot; started to be parsed as<br/> $foo.&quot;::&quot;.$bar, instead of $foo:: . $bar, as previously.<br/> <br/> Now, &quot;$foo::@bar&quot; was unaffected, so by fixing one form of inconsis-<br/> tency we ended up form, including B::Deparse bugs (because B::Deparse<br/> was not consistent with the core).<br/> <br/> This commit restores the previous behaviour by giving parse_ident an<br/> extra parameter, making the ::$ check optional.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> embed.fnc | 2 +-<br/> embed.h | 2 +-<br/> proto.h | 2 +-<br/> t/base/lex.t | 9 ++++++++-<br/> toke.c | 14 ++++++++------<br/> 5 files changed, 19 insertions(+), 10 deletions(-)<br/><br/>diff --git a/embed.fnc b/embed.fnc<br/>index cd4b0ff..fe5eb68 100644<br/>--- a/embed.fnc<br/>+++ b/embed.fnc<br/>@@ -2548,7 +2548,7 @@ s |int |deprecate_commaless_var_list<br/> s |int |ao |int toketype<br/> s |void|parse_ident|NN char **s|NN char **d \<br/> |NN char * const e|int allow_package \<br/>- |bool is_utf8<br/>+ |bool is_utf8|bool check_dollar<br/> # if defined(PERL_CR_FILTER)<br/> s |I32 |cr_textfilter |int idx|NULLOK SV *sv|int maxlen<br/> s |void |strip_return |NN SV *sv<br/>diff --git a/embed.h b/embed.h<br/>index 84f647e..de5a590 100644<br/>--- a/embed.h<br/>+++ b/embed.h<br/>@@ -1784,7 +1784,7 @@<br/> #define lop(a,b,c) S_lop(aTHX_ a,b,c)<br/> #define missingterm(a) S_missingterm(aTHX_ a)<br/> #define no_op(a,b) S_no_op(aTHX_ a,b)<br/>-#define parse_ident(a,b,c,d,e) S_parse_ident(aTHX_ a,b,c,d,e)<br/>+#define parse_ident(a,b,c,d,e,f) S_parse_ident(aTHX_ a,b,c,d,e,f)<br/> #define pending_ident() S_pending_ident(aTHX)<br/> #define scan_const(a) S_scan_const(aTHX_ a)<br/> #define scan_formline(a) S_scan_formline(aTHX_ a)<br/>diff --git a/proto.h b/proto.h<br/>index 42d78cb..9bdbac7 100644<br/>--- a/proto.h<br/>+++ b/proto.h<br/>@@ -5496,7 +5496,7 @@ STATIC SV* S_new_constant(pTHX_ const char *s, STRLEN len, const char *key, STRL<br/> STATIC void S_no_op(pTHX_ const char *const what, char *s);<br/> #define PERL_ARGS_ASSERT_NO_OP \<br/> assert(what)<br/>-STATIC void S_parse_ident(pTHX_ char **s, char **d, char * const e, int allow_package, bool is_utf8);<br/>+STATIC void S_parse_ident(pTHX_ char **s, char **d, char * const e, int allow_package, bool is_utf8, bool check_dollar);<br/> #define PERL_ARGS_ASSERT_PARSE_IDENT \<br/> assert(s); assert(d); assert(e)<br/> STATIC int S_pending_ident(pTHX);<br/>diff --git a/t/base/lex.t b/t/base/lex.t<br/>index fe46f14..4ac2b5b 100644<br/>--- a/t/base/lex.t<br/>+++ b/t/base/lex.t<br/>@@ -1,6 +1,6 @@<br/> #!./perl<br/> <br/>-print &quot;1..105\n&quot;;<br/>+print &quot;1..107\n&quot;;<br/> <br/> $x = &#39;x&#39;;<br/> <br/>@@ -528,3 +528,10 @@ eval q|s##[}#e|;<br/> eval (&#39;/@0{0*-&gt;@*/*]&#39;);<br/> print &quot;ok $test - 128171\n&quot;; $test++;<br/> }<br/>+<br/>+$foo = &quot;WRONG&quot;; $foo:: = &quot;bar&quot;; $bar = &quot;baz&quot;;<br/>+print &quot;not &quot; unless &quot;$foo::$bar&quot; eq &quot;barbaz&quot;;<br/>+print qq|ok $test - [perl #128478] &quot;\$foo::\$bar&quot;\n|; $test++;<br/>+@bar = (&quot;baz&quot;,&quot;bonk&quot;);<br/>+print &quot;not &quot; unless &quot;$foo::@bar&quot; eq &quot;barbaz bonk&quot;;<br/>+print qq|ok $test - [perl #128478] &quot;\$foo::\@bar&quot;\n|; $test ++;<br/>diff --git a/toke.c b/toke.c<br/>index 327d984..aebeebb 100644<br/>--- a/toke.c<br/>+++ b/toke.c<br/>@@ -8819,7 +8819,8 @@ S_new_constant(pTHX_ const char *s, STRLEN len, const char *key, STRLEN keylen,<br/> }<br/> <br/> PERL_STATIC_INLINE void<br/>-S_parse_ident(pTHX_ char **s, char **d, char * const e, int allow_package, bool is_utf8) {<br/>+S_parse_ident(pTHX_ char **s, char **d, char * const e, int allow_package,<br/>+ bool is_utf8, bool check_dollar) {<br/> PERL_ARGS_ASSERT_PARSE_IDENT;<br/> <br/> for (;;) {<br/>@@ -8855,7 +8856,7 @@ S_parse_ident(pTHX_ char **s, char **d, char * const e, int allow_package, bool<br/> * the code path that triggers the &quot;Bad name after&quot; warning<br/> * when looking for barewords.<br/> */<br/>- &amp;&amp; (*s)[2] != &#39;$&#39;) {<br/>+ &amp;&amp; !(check_dollar &amp;&amp; (*s)[2] == &#39;$&#39;)) {<br/> *(*d)++ = *(*s)++;<br/> *(*d)++ = *(*s)++;<br/> }<br/>@@ -8877,7 +8878,7 @@ S_scan_word(pTHX_ char *s, char *dest, STRLEN destlen, int allow_package, STRLEN<br/> <br/> PERL_ARGS_ASSERT_SCAN_WORD;<br/> <br/>- parse_ident(&amp;s, &amp;d, e, allow_package, is_utf8);<br/>+ parse_ident(&amp;s, &amp;d, e, allow_package, is_utf8, TRUE);<br/> *d = &#39;\0&#39;;<br/> *slp = d - dest;<br/> return s;<br/>@@ -8925,7 +8926,7 @@ S_scan_ident(pTHX_ char *s, char *dest, STRLEN destlen, I32 ck_uni)<br/> }<br/> }<br/> else { /* See if it is a &quot;normal&quot; identifier */<br/>- parse_ident(&amp;s, &amp;d, e, 1, is_utf8);<br/>+ parse_ident(&amp;s, &amp;d, e, 1, is_utf8, FALSE);<br/> }<br/> *d = &#39;\0&#39;;<br/> d = dest;<br/>@@ -8994,7 +8995,7 @@ S_scan_ident(pTHX_ char *s, char *dest, STRLEN destlen, I32 ck_uni)<br/> (the later check for } being at the expected point will trap<br/> cases where this doesn&#39;t pan out.) */<br/> d += is_utf8 ? UTF8SKIP(d) : 1;<br/>- parse_ident(&amp;s, &amp;d, e, 1, is_utf8);<br/>+ parse_ident(&amp;s, &amp;d, e, 1, is_utf8, TRUE);<br/> *d = &#39;\0&#39;;<br/> tmp_copline = CopLINE(PL_curcop);<br/> if (s &lt; PL_bufend &amp;&amp; isSPACE(*s)) {<br/>@@ -11875,7 +11876,8 @@ S_parse_opt_lexvar(pTHX)<br/> s = PL_bufptr;<br/> d = PL_tokenbuf + 1;<br/> PL_tokenbuf[0] = (char)sigil;<br/>- parse_ident(&amp;s, &amp;d, PL_tokenbuf + sizeof(PL_tokenbuf) - 1, 0, cBOOL(UTF));<br/>+ parse_ident(&amp;s, &amp;d, PL_tokenbuf + sizeof(PL_tokenbuf) - 1, 0,<br/>+ cBOOL(UTF), FALSE);<br/> PL_bufptr = s;<br/> if (d == PL_tokenbuf+1)<br/> return NULL;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47509.html Mon, 27 Jun 2016 13:33:25 +0000 [perl.git] branch blead, updated. v5.25.2-50-gf9296ff by Steve Hay via perl5-changes In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/f9296ff3414b48d19cfd16e067e4be4cf6a6be73?hp=7e169e8432077cbdaf237f7238ca7a40fe1116ac&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit f9296ff3414b48d19cfd16e067e4be4cf6a6be73<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 14:17:13 2016 +0100<br/><br/> Update t/porting/customized.dat following Porting/Maintainers.pl updates<br/><br/>M t/porting/customized.dat<br/><br/>commit d1e81356197935fbe1d18300277163b8a5c30f33<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 14:06:11 2016 +0100<br/><br/> Porting/Maintainers.pl - version&#39;s vperl/vpp.pm is now excluded<br/> <br/> so the old mapping to cpan/version/lib/version/ is no longer required<br/><br/>M Porting/Maintainers.pl<br/><br/>commit 721a02989d6ae50634e8958b4cca80affe43b92a<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 14:00:40 2016 +0100<br/><br/> Test-Simple: Remove files left over from old CPAN releases<br/> <br/> and fix EXCLUDED files list in Porting/Maintainers.pl<br/><br/>M MANIFEST<br/>M Porting/Maintainers.pl<br/>D cpan/Test-Simple/lib/Test/FAQ.pod<br/>D cpan/Test-Simple/t/Legacy/subtest/plan.t<br/>D cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t<br/><br/>commit 1efe9157d0a176f81b725fd0bd64d61c0845b49a<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 13:51:45 2016 +0100<br/><br/> Fix perlpodstyle.pod file name in Porting/Maintainers.pl<br/><br/>M Porting/Maintainers.pl<br/><br/>commit 2beba2a9e57f44ed8c57249738a40fc5d4f751ec<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 13:49:01 2016 +0100<br/><br/> Four Pod-Checker test files have EOL differences compared to CPAN<br/> <br/> (They&#39;re all LF only in core but CRLF on CPAN.)<br/><br/>M Porting/Maintainers.pl<br/><br/>commit 415333779573ce88cc6257c100b582b4ab1ab7a3<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 13:44:04 2016 +0100<br/><br/> Module-Metadata was customized by 9ec93952bf<br/><br/>M Porting/Maintainers.pl<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> MANIFEST | 3 -<br/> Porting/Maintainers.pl | 15 +-<br/> cpan/Test-Simple/lib/Test/FAQ.pod | 371 -----------------------<br/> cpan/Test-Simple/t/Legacy/subtest/plan.t | 49 ---<br/> cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t | 19 --<br/> t/porting/customized.dat | 5 +<br/> 6 files changed, 16 insertions(+), 446 deletions(-)<br/> delete mode 100644 cpan/Test-Simple/lib/Test/FAQ.pod<br/> delete mode 100644 cpan/Test-Simple/t/Legacy/subtest/plan.t<br/> delete mode 100644 cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t<br/><br/>diff --git a/MANIFEST b/MANIFEST<br/>index 027060e..8d3d82e 100644<br/>--- a/MANIFEST<br/>+++ b/MANIFEST<br/>@@ -2508,7 +2508,6 @@ cpan/Test-Simple/lib/Test/Builder/Module.pm<br/> cpan/Test-Simple/lib/Test/Builder/Tester.pm<br/> cpan/Test-Simple/lib/Test/Builder/Tester/Color.pm<br/> cpan/Test-Simple/lib/Test/Builder/TodoDiag.pm<br/>-cpan/Test-Simple/lib/Test/FAQ.pod<br/> cpan/Test-Simple/lib/Test/More.pm<br/> cpan/Test-Simple/lib/Test/Simple.pm<br/> cpan/Test-Simple/lib/Test/Tester.pm<br/>@@ -2644,7 +2643,6 @@ cpan/Test-Simple/t/Legacy/subtest/for_do_t.test<br/> cpan/Test-Simple/t/Legacy/subtest/fork.t<br/> cpan/Test-Simple/t/Legacy/subtest/implicit_done.t<br/> cpan/Test-Simple/t/Legacy/subtest/line_numbers.t<br/>-cpan/Test-Simple/t/Legacy/subtest/plan.t<br/> cpan/Test-Simple/t/Legacy/subtest/predicate.t<br/> cpan/Test-Simple/t/Legacy/subtest/singleton.t<br/> cpan/Test-Simple/t/Legacy/subtest/threads.t<br/>@@ -2713,7 +2711,6 @@ cpan/Test-Simple/t/Test2/behavior/nested_context_exception.t<br/> cpan/Test-Simple/t/Test2/behavior/no_load_api.t<br/> cpan/Test-Simple/t/Test2/behavior/Subtest_buffer_formatter.t<br/> cpan/Test-Simple/t/Test2/behavior/Subtest_events.t<br/>-cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t<br/> cpan/Test-Simple/t/Test2/behavior/Taint.t<br/> cpan/Test-Simple/t/Test2/legacy/TAP.t<br/> cpan/Test-Simple/t/Test2/modules/API.t<br/>diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl<br/>index e7de2a1..d56c949 100755<br/>--- a/Porting/Maintainers.pl<br/>+++ b/Porting/Maintainers.pl<br/>@@ -819,6 +819,8 @@ use File::Glob qw(:case);<br/> qr{weaver.ini},<br/> qr{^xt},<br/> ],<br/>+ # https://rt.perl.org/Ticket/Display.html?id=128160<br/>+ &#39;CUSTOMIZED&#39; =&gt; [ qw[ t/extract-package.t ] ],<br/> },<br/> <br/> &#39;Net::Ping&#39; =&gt; {<br/>@@ -886,6 +888,12 @@ use File::Glob qw(:case);<br/> &#39;Pod::Checker&#39; =&gt; {<br/> &#39;DISTRIBUTION&#39; =&gt; &#39;MAREKR/Pod-Checker-1.73.tar.gz&#39;,<br/> &#39;FILES&#39; =&gt; q[cpan/Pod-Checker],<br/>+ &#39;CUSTOMIZED&#39; =&gt; [ qw[<br/>+ t/pod/contains_bad_pod.xr<br/>+ t/pod/selfcheck.t<br/>+ t/pod/testcmp.pl<br/>+ t/pod/testpchk.pl<br/>+ ] ],<br/> },<br/> <br/> &#39;Pod::Escapes&#39; =&gt; {<br/>@@ -933,7 +941,7 @@ use File::Glob qw(:case);<br/> &#39;MAP&#39; =&gt; {<br/> &#39;&#39; =&gt; &#39;cpan/podlators/&#39;,<br/> # this file lives outside the cpan/ directory<br/>- &#39;pod/perlpodstyle&#39; =&gt; &#39;pod/perlpodstyle.pod&#39;,<br/>+ &#39;pod/perlpodstyle.pod&#39; =&gt; &#39;pod/perlpodstyle.pod&#39;,<br/> },<br/> },<br/> <br/>@@ -1065,7 +1073,7 @@ use File::Glob qw(:case);<br/> dist.ini<br/> examples/indent.pl<br/> examples/subtest.t<br/>- examples/tools.t<br/>+ examples/tools.pl<br/> examples/tools.t<br/> t/00compile.t<br/> t/xxx-changes_updated.t<br/>@@ -1227,7 +1235,7 @@ use File::Glob qw(:case);<br/> &#39;vutil/vxs.xs&#39;,<br/> &#39;t/00impl-pp.t&#39;,<br/> &#39;t/survey_locales&#39;,<br/>- &#39;lib/version/vpp.pm&#39;,<br/>+ &#39;vperl/vpp.pm&#39;,<br/> ],<br/> <br/> # When adding the CPAN-distributed files for version.pm, it is necessary<br/>@@ -1239,7 +1247,6 @@ use File::Glob qw(:case);<br/> ],<br/> <br/> &#39;MAP&#39; =&gt; {<br/>- &#39;vperl/&#39; =&gt; &#39;cpan/version/lib/version/&#39;,<br/> &#39;vutil/&#39; =&gt; &#39;&#39;,<br/> &#39;&#39; =&gt; &#39;cpan/version/&#39;,<br/> },<br/>diff --git a/cpan/Test-Simple/lib/Test/FAQ.pod b/cpan/Test-Simple/lib/Test/FAQ.pod<br/>deleted file mode 100644<br/>index 5de8d16..0000000<br/>--- a/cpan/Test-Simple/lib/Test/FAQ.pod<br/>+++ /dev/null<br/>@@ -1,371 +0,0 @@<br/>-=pod<br/>-<br/>-=head1 NAME<br/>-<br/>-Test::FAQ - Frequently Asked Questions about testing with Perl<br/>-<br/>-=head1 DESCRIPTION<br/>-<br/>-Frequently Asked Questions about testing in general and specific<br/>-issues with Perl.<br/>-<br/>-=head2 Is there any tutorial on testing?<br/>-<br/>-L&lt;Test::Tutorial&gt;<br/>-<br/>-=head2 Are there any modules for testing?<br/>-<br/>-A whole bunch. Start with L&lt;Test::Simple&gt; then move onto Test::More.<br/>-<br/>-Then go onto L&lt;http://search.cpan.org&gt; and search for &quot;Test&quot;.<br/>-<br/>-=head2 Are there any modules for testing web pages/CGI programs?<br/>-<br/>-L&lt;Test::WWW::Mechanize&gt;, L&lt;Test::WWW::Selenium&gt;<br/>-<br/>-=head2 Are there any modules for testing external programs?<br/>-<br/>-L&lt;Test::Cmd&gt;<br/>-<br/>-=head2 Can you do xUnit/JUnit style testing in Perl?<br/>-<br/>-Yes, L&lt;Test::Class&gt; allows you to write test methods while continuing to<br/>-use all the usual CPAN testing modules. It is the best and most<br/>-perlish way to do xUnit style testing.<br/>-<br/>-L&lt;Test::Unit&gt; is a more direct port of xUnit to Perl, but it does not use<br/>-the Perl conventions and does not play well with other CPAN testing<br/>-modules. As of this writing, it is abandoned. B&lt;Do not use&gt;.<br/>-<br/>-The L&lt;Test::Inline&gt; (aka L&lt;Pod::Tests&gt;) is worth mentioning as it allows you to<br/>-put tests into the POD in the same file as the code.<br/>-<br/>-<br/>-=head2 How do I test my module is backwards/forwards compatible?<br/>-<br/>-First, install a bunch of perls of commonly used versions. At the<br/>-moment, you could try these<br/>-<br/>- 5.7.2<br/>- 5.6.1<br/>- 5.005_03<br/>- 5.004_05<br/>-<br/>-if you&#39;re feeling brave, you might want to have on hand these<br/>-<br/>- bleadperl<br/>- 5.6.0<br/>- 5.004_04<br/>- 5.004<br/>-<br/>-going back beyond 5.003 is probably beyond the call of duty.<br/>-<br/>-You can then add something like this to your F&lt;Makefile.PL&gt;. It<br/>-overrides the L&lt;ExtUtils::MakeMaker&gt; C&lt;test_via_harness()&gt; method to run the tests<br/>-against several different versions of Perl.<br/>-<br/>- # If PERL_TEST_ALL is set, run &quot;make test&quot; against <br/>- # other perls as well as the current perl.<br/>- {<br/>- package MY;<br/>-<br/>- sub test_via_harness {<br/>- my($self, $orig_perl, $tests) = @_;<br/>-<br/>- # names of your other perl binaries.<br/>- my @other_perls = qw(perl5.004_05 perl5.005_03 perl5.7.2);<br/>-<br/>- my @perls = ($orig_perl);<br/>- push @perls, @other_perls if $ENV{PERL_TEST_ALL};<br/>-<br/>- my $out;<br/>- foreach my $perl (@perls) {<br/>- $out .= $self-&gt;SUPER::test_via_harness($perl, $tests);<br/>- }<br/>-<br/>- return $out;<br/>- }<br/>- }<br/>-<br/>-and re-run your F&lt;Makefile.PL&gt; with the C&lt;PERL_TEST_ALL&gt; environment<br/>-variable set<br/>-<br/>- PERL_TEST_ALL=1 perl Makefile.PL<br/>-<br/>-now C&lt;make test&gt; will run against each of your other perls.<br/>-<br/>-<br/>-=head2 If I&#39;m testing Foo::Bar, where do I put tests for Foo::Bar::Baz?<br/>-<br/>-=head2 How do I know when my tests are good enough?<br/>-<br/>-A: Use tools for measuring the code coverage of your tests, e.g. how many of<br/>-your source code lines/subs/expressions/paths are executed (aka covered) by<br/>-the test suite. The more, the better, of course, although you may not<br/>-be able achieve 100%. If your testsuite covers under 100%, then<br/>-the rest of your code is, basically, untested. Which means it may work in<br/>-surprising ways (e.g. doesn&#39;t do things like they are intended or<br/>-documented), have bugs (e.g. return wrong results) or it may not work at<br/>-all.<br/>-<br/>-=head2 How do I measure the coverage of my test suite?<br/>-<br/>-L&lt;Devel::Cover&gt;<br/>-<br/>-=head2 How do I get tests to run in a certain order?<br/>-<br/>-Tests run in alphabetical order, so simply name your test files in the order<br/>-you want them to run. Numbering your test files works, too.<br/>-<br/>- t/00_compile.t<br/>- t/01_config.t<br/>- t/zz_teardown.t<br/>-<br/>-0 runs first, z runs last.<br/>-<br/>-To achieve a specific order, try L&lt;Test::Manifest&gt;.<br/>-<br/>-Typically you do B&lt;not&gt; want your tests to require being run in a<br/>-certain order, but it can be useful to do a compile check first or to<br/>-run the tests on a very basic module before everything else. This<br/>-gives you early information if a basic module fails which will bring<br/>-everything else down.<br/>-<br/>-Another use is if you have a suite wide setup/teardown, such as<br/>-creating and delete a large test database, which may be too<br/>-expensive to do for every test.<br/>-<br/>-We recommend B&lt;against&gt; numbering every test file. For most files<br/>-this ordering will be arbitrary and the leading number obscures the<br/>-real name of the file. See L&lt;What should I name my test files?&gt; for<br/>-more information.<br/>-<br/>-<br/>-=head2 What should I name my tests?<br/>-<br/>-=head2 What should I name my test files?<br/>-<br/>-A test filename serves three purposes:<br/>-<br/>-Most importantly, it serves to identify what is being tested. Each<br/>-test file should test a clear piece of functionality. This could be<br/>-at single class, a single method, even a single bug.<br/>-<br/>-The order in which tests are run is usually dictated by the filename.<br/>-See L&lt;How do I get tests to run in a certain order?&gt; for details.<br/>-<br/>-Finally, the grouping of tests into common bits of functionality can<br/>-be achieved by directory and filenames. For example, all the tests<br/>-for L&lt;Test::Builder&gt; are in the F&lt;t/Builder/&gt; directory.<br/>-<br/>-As an example, F&lt;t/Builder/reset.t&gt; contains the tests for<br/>-C&lt;&lt; Test::Builder-&gt;reset &gt;&gt;. F&lt;t/00compile.t&gt; checks that everything<br/>-compiles, and it will run first. F&lt;t/dont_overwrite_die_handler.t&gt;<br/>-checks that we don&#39;t overwrite the C&lt;&lt; $SIG{__DIE__} &gt;&gt; handler.<br/>-<br/>-<br/>-=head2 How do I deal with tests that sometimes pass and sometimes fail?<br/>-<br/>-=head2 How do I test with a database/network/server that the user may or may not have?<br/>-<br/>-=head2 What&#39;s a good way to test lists?<br/>-<br/>-C&lt;is_deeply()&gt; from L&lt;Test::More&gt; as well as L&lt;Test::Deep&gt;.<br/>-<br/>-=head2 Is there such a thing as untestable code?<br/>-<br/>-There&#39;s always compile/export checks.<br/>-<br/>-Code must be written with testability in mind. Separation of form and<br/>-functionality.<br/>-<br/>-=head2 What do I do when I can&#39;t make the code do the same thing twice?<br/>-<br/>-Force it to do the same thing twice.<br/>-<br/>-Even a random number generator can be tested.<br/>-<br/>-=head2 How do I test a GUI?<br/>-<br/>-=head2 How do I test an image generator?<br/>-<br/>-=head2 How do I test that my code handles failures gracefully?<br/>-<br/>-=head2 How do I check the right warnings are issued?<br/>-<br/>-L&lt;Test::Warn&gt;<br/>-<br/>-=head2 How do I test code that prints?<br/>-<br/>-L&lt;Test::Output&gt;<br/>-<br/>-=head2 I want to test that my code dies when I do X<br/>-<br/>-L&lt;Test::Exception&gt;<br/>-<br/>-=head2 I want to print out more diagnostic info on failure.<br/>-<br/>-C&lt;ok(...) || diag &quot;...&quot;;&gt;<br/>-<br/>-=head2 How can I simulate failures to make sure that my code does the Right Thing in the face of them?<br/>-<br/>-<br/>-=head2 Why use an ok() function?<br/>-<br/>-On Tue, Aug 28, 2001 at 02:12:46PM +0100, Robin Houston wrote:<br/>-&gt; Michael Schwern wrote:<br/>-&gt; &gt; Ah HA! I&#39;ve been wondering why nobody ever thinks to write a simple<br/>-&gt; &gt; ok() function for their tests! perlhack has bad testing advice.<br/>-&gt; <br/>-&gt; Could you explain the advantage of having a &quot;simple ok() function&quot;?<br/>-<br/>-Because writing:<br/>-<br/>- print &quot;not &quot; unless some thing worked;<br/>- print &quot;ok $test\n&quot;; $test++;<br/>-<br/>-gets rapidly annoying. This is why we made up subroutines in the<br/>-first place. It also looks like hell and obscures the real purpose.<br/>-<br/>-Besides, that will cause problems on VMS.<br/>-<br/>-<br/>-&gt; As somebody who has spent many painful hours debugging test failures,<br/>-&gt; I&#39;m intimately familiar with the _disadvantages_. When you run the<br/>-&gt; test, you know that &quot;test 113 failed&quot;. That&#39;s all you know, in general.<br/>-<br/>-Second advantage is you can easily upgrade the C&lt;ok()&gt; function to fix<br/>-this, either by slapping this line in:<br/>-<br/>- printf &quot;# Failed test at line %d\n&quot;, (caller)[2];<br/>-<br/>-or simply junking the whole thing and switching to L&lt;Test::Simple&gt; or<br/>-L&lt;Test::More&gt;, which does all sorts of nice diagnostics-on-failure for<br/>-you. Its C&lt;ok()&gt; function is backwards compatible with the above.<br/>-<br/>-There&#39;s some issues with using L&lt;Test::Simple&gt; to test really basic Perl<br/>-functionality, you have to choose on a per test basis. Since<br/>-L&lt;Test::Simple&gt; doesn&#39;t use C&lt;pack()&gt; it&#39;s safe for F&lt;t/op/pack.t&gt; to use<br/>-L&lt;Test::Simple&gt;. I just didn&#39;t want to make the perlhack patching<br/>-example too complicated.<br/>-<br/>-<br/>-=head2 Dummy Mode<br/>-<br/>-&gt; One compromise would be to use a test-generating script, which allows<br/>-&gt; the tests to be structured simply and _generates_ the actual test<br/>-&gt; code. One could then grep the generated test script to locate the<br/>-&gt; failing code.<br/>-<br/>-This is a very interesting, and very common, response to the problem.<br/>-I&#39;m going to make some observations about reactions to testing,<br/>-they&#39;re not specific to you.<br/>-<br/>-If you&#39;ve ever read the Bastard Operator From Hell series, you&#39;ll<br/>-recall the Dummy Mode.<br/>-<br/>- The words &quot;power surging&quot; and &quot;drivers&quot; have got her. People hear<br/>- words like that and go into Dummy Mode and do ANYTHING you say. I<br/>- could tell her to run naked across campus with a powercord rammed<br/>- up her backside and she&#39;d probably do it... Hmmm...<br/>-<br/>-There seems to be a Dummy Mode with respect to testing. An otherwise competent<br/>-person goes to write a test and they suddenly forget all basic<br/>-programming practice.<br/>-<br/>-<br/>-The reasons for using an C&lt;ok()&gt; function above are the same reasons to<br/>-use functions in general, we should all know them. We&#39;d laugh our<br/>-heads off at code that repeated as much as your average test does.<br/>-These are newbie mistakes.<br/>-<br/>-And the normal &#39;can do&#39; flair seems to disappear. I know Robin. I<br/>-*know* that in any other situation he would have come up with the<br/>-C&lt;caller()&gt; trick in about 15 seconds flat. Instead weird, elaborate,<br/>-inelegant hacks are thought up to solve the simplest problems.<br/>-<br/>-<br/>-I guess there are certain programming idioms that are foreign enough<br/>-to throw your brain into reverse if you&#39;re not ready for them. Like<br/>-trying to think in Lisp, for example. Or being presented with OO for<br/>-the first time. I guess writing test is one of those.<br/>-<br/>-<br/>-=head2 How do I use Test::More without depending on it?<br/>-<br/>-Install L&lt;Test::More&gt; into F&lt;t/lib&gt; under your source directory. Then in your tests<br/>-say C&lt;use lib &#39;t/lib&#39;&gt;.<br/>-<br/>-=head2 How do I deal with threads and forking?<br/>-<br/>-=head2 Why do I need more than ok?<br/>-<br/>-Since every test can be reduced to checking if a statement is true,<br/>-C&lt;ok()&gt; can test everything. But C&lt;ok()&gt; doesn&#39;t tell you why the test<br/>-failed. For that you need to tell the test more... which is why <br/>-you need L&lt;Test::More&gt;.<br/>-<br/>- ok $pirate-&gt;name eq &quot;Roberts&quot;, &quot;person&#39;s name&quot;;<br/>-<br/>- not ok 1 - person&#39;s name<br/>- # Failed test at pirates.t line 23.<br/>-<br/>-If the above fails, you don&#39;t know what C&lt;&lt; $person-&gt;name &gt;&gt; returned.<br/>-You have to go in and add a C&lt;diag&gt; call. This is time consuming. If<br/>-it&#39;s a heisenbug, it might not fail again! If it&#39;s a user reporting a<br/>-test failure, they might not be bothered to hack the tests to give you<br/>-more information.<br/>-<br/>- is $person-&gt;name, &quot;Roberts&quot;, &quot;person&#39;s name&quot;;<br/>-<br/>- not ok 1 - person&#39;s name<br/>- # Failed test at pirates.t line 23.<br/>- # got: &#39;Wesley&#39;<br/>- # expected: &#39;Roberts&#39;<br/>-<br/>-Using C&lt;is&gt; from L&lt;Test::More&gt; you now know what value you got and<br/>-what value you expected.<br/>-<br/>-The most useful functions in L&lt;Test::More&gt; are C&lt;is()&gt;, C&lt;like()&gt; and C&lt;is_deeply()&gt;.<br/>-<br/>-<br/>-=head2 What&#39;s wrong with C&lt;print $test ? &quot;ok&quot; : &quot;not ok&quot;&gt;?<br/>-<br/>-=head2 How do I check for an infinite loop?<br/>-<br/>-On Mon, Mar 18, 2002 at 03:57:55AM -0500, Mark-Jason Dominus wrote:<br/>-&gt; <br/>-&gt; Michael The Schwern &lt;schwern@pobox.com&gt; says:<br/>-&gt; &gt; Use alarm and skip the test if $Config{d_alarm} is false (see<br/>-&gt; &gt; t/op/alarm.t for an example). If you think the infinite loop is due<br/>-&gt; &gt; to a programming glitch, as opposed to a cross-platform issue, this<br/>-&gt; &gt; will be enough.<br/>-&gt; <br/>-&gt; Thanks very much!<br/>-&gt; <br/>-<br/>-=head2 How can I check that flock works?<br/>-<br/>-=head2 How do I use the comparison functions of a testing module without it being a test?<br/>-<br/>-Any testing function based on L&lt;Test::Builder&gt;, most are, can be quieted so it does<br/>-not do any testing. It simply returns true or false. Use the following code...<br/>-<br/>- use Test::More; # or any testing module<br/>- <br/>- use Test::Builder;<br/>- use File::Spec;<br/>-<br/>- # Get the internal Test::Builder object<br/>- my $tb = Test::Builder-&gt;new;<br/>-<br/>- $tb-&gt;plan(&quot;no_plan&quot;);<br/>- <br/>- # Keep Test::Builder from displaying anything<br/>- $tb-&gt;no_diag(1);<br/>- $tb-&gt;no_ending(1);<br/>- $tb-&gt;no_header(1);<br/>- $tb-&gt;output( File::Spec-&gt;devnull );<br/>-<br/>- # Now you can use the testing function.<br/>- print is_deeply( &quot;foo&quot;, &quot;bar&quot; ) ? &quot;Yes&quot; : &quot;No&quot;;<br/>diff --git a/cpan/Test-Simple/t/Legacy/subtest/plan.t b/cpan/Test-Simple/t/Legacy/subtest/plan.t<br/>deleted file mode 100644<br/>index 7e944ab..0000000<br/>--- a/cpan/Test-Simple/t/Legacy/subtest/plan.t<br/>+++ /dev/null<br/>@@ -1,49 +0,0 @@<br/>-#!/usr/bin/perl -w<br/>-<br/>-BEGIN {<br/>- if( $ENV{PERL_CORE} ) {<br/>- chdir &#39;t&#39;;<br/>- @INC = ( &#39;../lib&#39;, &#39;lib&#39; );<br/>- }<br/>- else {<br/>- unshift @INC, &#39;t/lib&#39;;<br/>- }<br/>-}<br/>-<br/>-use strict;<br/>-use warnings;<br/>-<br/>-use Test::Builder::NoOutput;<br/>-<br/>-use Test::More tests =&gt; 6;<br/>-<br/>-# Formatting may change if we&#39;re running under Test::Harness.<br/>-$ENV{HARNESS_ACTIVE} = 0;<br/>-<br/>-{<br/>- ok defined &amp;subtest, &#39;subtest() should be exported to our namespace&#39;;<br/>- is prototype(&#39;subtest&#39;), undef, &#39;... has no prototype&#39;;<br/>-<br/>- subtest &#39;subtest with plan&#39;, sub {<br/>- plan tests =&gt; 2;<br/>- ok 1, &#39;planned subtests should work&#39;;<br/>- ok 1, &#39;... and support more than one test&#39;;<br/>- };<br/>- subtest &#39;subtest without plan&#39;, sub {<br/>- plan &#39;no_plan&#39;;<br/>- ok 1, &#39;no_plan subtests should work&#39;;<br/>- ok 1, &#39;... and support more than one test&#39;;<br/>- ok 1, &#39;... no matter how many tests are run&#39;;<br/>- };<br/>- subtest &#39;subtest with implicit done_testing()&#39;, sub {<br/>- ok 1, &#39;subtests with an implicit done testing should work&#39;;<br/>- ok 1, &#39;... and support more than one test&#39;;<br/>- ok 1, &#39;... no matter how many tests are run&#39;;<br/>- };<br/>- subtest &#39;subtest with explicit done_testing()&#39;, sub {<br/>- ok 1, &#39;subtests with an explicit done testing should work&#39;;<br/>- ok 1, &#39;... and support more than one test&#39;;<br/>- ok 1, &#39;... no matter how many tests are run&#39;;<br/>- done_testing();<br/>- };<br/>-}<br/>diff --git a/cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t b/cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t<br/>deleted file mode 100644<br/>index f3dab3c..0000000<br/>--- a/cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t<br/>+++ /dev/null<br/>@@ -1,19 +0,0 @@<br/>-use strict;<br/>-use warnings;<br/>-<br/>-BEGIN { require &quot;t/tools.pl&quot; };<br/>-<br/>-use Test2::API qw/run_subtest intercept/;<br/>-<br/>-my $events = intercept {<br/>- my $code = sub { plan 4; ok(1) };<br/>- run_subtest(&#39;bad_plan&#39;, $code, &#39;buffered&#39;);<br/>-};<br/>-<br/>-is(<br/>- $events-&gt;[-1]-&gt;message,<br/>- &quot;Bad subtest plan, expected 4 but ran 1&quot;,<br/>- &quot;Helpful message if subtest has a bad plan&quot;,<br/>-);<br/>-<br/>-done_testing;<br/>diff --git a/t/porting/customized.dat b/t/porting/customized.dat<br/>index bb68a05..2314403 100644<br/>--- a/t/porting/customized.dat<br/>+++ b/t/porting/customized.dat<br/>@@ -6,6 +6,11 @@ ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm 27a<br/> File::Path cpan/File-Path/lib/File/Path.pm fd8ce4420a0c113d3f47dd3223859743655c1da8<br/> File::Path cpan/File-Path/t/Path_win32.t 94b9276557ce7f80b91f6fd9bfa7a0cd9bf9683e<br/> Math::BigRat cpan/Math-BigRat/lib/Math/BigRat.pm 6eabc68e04f67694f6fe523e64eb013fc337ca5b<br/>+Module::Metadata cpan/Module-Metadata/t/extract-package.t ddb0a96a6bd0c1593c5654d4ac4449c1a64f6953<br/>+Pod::Checker cpan/Pod-Checker/t/pod/contains_bad_pod.xr 73538fd80dfe6e19ad561fe034009b44460208f6<br/>+Pod::Checker cpan/Pod-Checker/t/pod/selfcheck.t 8ce3cfd38e4b9bcf5bc7fe7f2a14195e49aed7d8<br/>+Pod::Checker cpan/Pod-Checker/t/pod/testcmp.pl a0cd5c8eca775c7753f4464eee96fa916e3d8a16<br/>+Pod::Checker cpan/Pod-Checker/t/pod/testpchk.pl b2072c7f4379fd050e15424175d7cac5facf5b3b<br/> Pod::Perldoc cpan/Pod-Perldoc/lib/Pod/Perldoc.pm fe0bc906fb74b69cfd3fb289316ba669d770d465<br/> Scalar-List-Utils cpan/Scalar-List-Utils/lib/List/Util.pm e479a29c6b66ac5cbbde4ef2296afaab6c4635a6<br/> Scalar-List-Utils cpan/Scalar-List-Utils/lib/List/Util/XS.pm cbc38838d32fd213ae7b37ac38e30195355be3b9<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47508.html Mon, 27 Jun 2016 13:19:54 +0000 [perl.git] branch maint-votes, updated.3e141d16384b883ec8cb3c2ffd7f14f89b784608 by Steve Hay via perl5-changes In perl.git, the branch maint-votes has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/3e141d16384b883ec8cb3c2ffd7f14f89b784608?hp=0e90ac4c9fd552481d66ba1dce46387181105458&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 3e141d16384b883ec8cb3c2ffd7f14f89b784608<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 13:30:02 2016 +0100<br/><br/> Fix XML errors in votes-5.20.xml<br/><br/>M votes-5.20.xml<br/><br/>commit c063a39e655a3639df9249e94ddee4b197d0c80c<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 13:28:16 2016 +0100<br/><br/> Fill in commit details for 5.24.1 blockers already fixed<br/><br/>M votes-5.24.xml<br/><br/>commit 0b4cb4845c11f9ec6e68ffc770371c7a4965839e<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 13:15:55 2016 +0100<br/><br/> maint-5.22 is now working towards 5.22.3<br/><br/>M votes-5.22.xml<br/><br/>commit b353d4f2a6886382eb2808025f65644da0f86b23<br/>Author: Steve Hay &lt;steve.m.hay@googlemail.com&gt;<br/>Date: Mon Jun 27 13:12:47 2016 +0100<br/><br/> maint-5.20 is now working towards 5.20.4<br/> <br/> This may or may not ever get made, but if it does then it will only be a<br/> few selected fixes since it&#39;s now out of support. Therefore, remove the<br/> long list of AFL crash fixes that were not even wanted for 5.20.3.<br/><br/>M votes-5.20.xml<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> votes-5.20.xml | 56 +++-----------------------------------------------------<br/> votes-5.22.xml | 2 +-<br/> votes-5.24.xml | 19 +++++++++++++++----<br/> 3 files changed, 19 insertions(+), 58 deletions(-)<br/><br/>diff --git a/votes-5.20.xml b/votes-5.20.xml<br/>index f985081..5a296f6 100644<br/>--- a/votes-5.20.xml<br/>+++ b/votes-5.20.xml<br/>@@ -2,7 +2,7 @@<br/> <br/> &lt;data&gt;<br/> <br/>-&lt;div&gt;&lt;h2&gt;Tickets Listed in #123921: 5.20.3 blockers&lt;/h2&gt;<br/>+&lt;div&gt;&lt;h2&gt;Tickets Listed in #128021: 5.20.4 blockers&lt;/h2&gt;<br/> <br/> &lt;/div&gt;<br/> <br/>@@ -25,7 +25,7 @@ The same criteria apply to code in dual-life modules as to core code.)<br/> <br/> &lt;div&gt;&lt;h3&gt;Security Fixes&lt;/h3&gt;<br/> <br/>-&lt;commit votes=&quot;khw&quot; id=&quot;854d0921f9d0fb6c5ea15abeed3dd19d63bbabe1&quot; ticket=&quot;123562&quot; desc=&quot;[CVE-2015-8853] Regexp-matching &quot;hangs&quot; indefinitely on illegal input using binmode :utf8 using 100%CPU&quot; /&gt;<br/>+&lt;commit votes=&quot;khw&quot; id=&quot;854d0921f9d0fb6c5ea15abeed3dd19d63bbabe1&quot; ticket=&quot;123562&quot; desc=&quot;[CVE-2015-8853] Regexp-matching &amp;quot;hangs&amp;quot; indefinitely on illegal input using binmode :utf8 using 100%C ... [6 chars truncated]<br/> <br/> &lt;/div&gt;<br/> <br/>@@ -33,61 +33,11 @@ The same criteria apply to code in dual-life modules as to core code.)<br/> <br/> &lt;/div&gt;<br/> <br/>-&lt;div&gt;&lt;h3&gt;AFL Crash / Assertion / Memory Corruption Fixes&lt;/h3&gt;<br/>-<br/>-This fix has a problem with it that needs to be solved before we can backport it. See http://www.nntp.perl.org/group/perl.perl5.porters/;msgid=20150120104834.32035.qmail@lists-nntp.develooper.com<br/>-&lt;commit votes=&quot;sprout, steveh, hv&quot; id=&quot;fa8f4f85ec35b0f047603e5b90a788571f7141bd&quot; ticket=&quot;123554&quot; desc=&quot;[perl #123554] avoid a crash from SvGROW(MEM_SIZE_MAX)&quot;/&gt;<br/>-&lt;commit votes=&quot;steveh, hv&quot; id=&quot;cc31571878894dd5f5af83722ca0c2a24621300c&quot; ticket=&quot;123554&quot; desc=&quot;[perl #123554] stop checking the message&quot;/&gt;<br/>-<br/>-Does this need d9a13252ba5aad7b3eaaff069b56472cfb651a40 too? -- steveh<br/>-&lt;commit votes=&quot;steveh&quot; id=&quot;67c71cbbd62a75ff2b913421806f6ea0f0b33558&quot; ticket=&quot;&quot; desc=&quot;Fix double free with const overload after errors&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;eabab8bccf871f8e85dfa4a3825827825fb86cd9&quot; ticket=&quot;123617&quot; desc=&quot;Localise PL_lex_stuff (crash fix)&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;ce7c414ee71d82955c799dca38981337cdf77b42&quot; ticket=&quot;123955&quot; desc=&quot;[perl #123955] Fix assert fail with 0 s/// in quotes&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;488bc5795891132d29daec7a860cab2a6266230c&quot; ticket=&quot;123737&quot; desc=&quot;[perl #123737] Fix assertion failure with 0${&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;310a0d0a370ea21c004bfea4bbdd2cf15da94547&quot; ticket=&quot;123737&quot; desc=&quot;[perl #123737] Fix assertion failure with 0$#{&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;3c47da3c2ebf51f08bb927dfa456939cc6c8c30f&quot; ticket=&quot;123753&quot; desc=&quot;[perl #123753] &amp;amp;\0foo parsing&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;eea89386b3fb948a8b1eb5ea860ec0a970c9e559&quot; ticket=&quot;123753&quot; desc=&quot;[perl #123753] Assert fail with &amp;amp;{+foo} and errors&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;7aa8cb0dec173dcfca4157e60634c74b97429a05&quot; ticket=&quot;123677&quot; desc=&quot;[perl #123677] Crash with token stack overflow&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;a53bfdae91fb2d719e69761f2d2f84c5d8a47753&quot; ticket=&quot;123759&quot; desc=&quot;[perl #123759] always count on OPpTRANS_IDENTICAL&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;8a6d8ec6fe627c401c6c759edd38bbb10e4b56e9&quot; ticket=&quot;123755&quot; desc=&quot;[perl #123755] including unknown char in error requires care&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;7082c44063b6e00b0bad96f3d8adec0946f1938c&quot; ticket=&quot;123755&quot; desc=&quot;regcomp can read past end of string after parsing flags&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;9efda33a86bb90e4838144d230a4fc3ae4d63d7d&quot; ticket=&quot;123554&quot; desc=&quot;[perl #123554] catch a couple of other size overflows&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;296f0d566b9f3ad1885ae7493caaffbd0cf2eada&quot; ticket=&quot;123554&quot; desc=&quot;[perl #123554] fix threaded builds and prevent a warning&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;87ebf1e3df9537a204b21f0405c6e60f2acdcc47&quot; ticket=&quot;123816&quot; desc=&quot;[perl #123816] fix stat stacking&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;d0bec20370cb0ec3e757fde65d8f1d13693e913f&quot; ticket=&quot;123870&quot; desc=&quot;[perl #123870] fixup trie runtime debug output&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;fc1bb3f2dcaaac9f305b27acb4800babdc8a06f3&quot; ticket=&quot;123874&quot; desc=&quot;[perl #123874] fix argument underflow for pack()&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;f4460c6f7a0de152ddaed69a0ba0efe653258f81&quot; ticket=&quot;123801&quot; desc=&quot;[perl #123801] Stop s##[}#e from crashing&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;479ae48e22f1160cf86508685822bf7e53e5816b&quot; ticket=&quot;123802&quot; desc=&quot;[perl #123802] Assertion failure with /$0{}/&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;66edcf79f81d47833f2be442966a5e90a223365f&quot; ticket=&quot;123802&quot; desc=&quot;[perl #123802] Assertion failure with qq[\L\L]&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;55b3980349c58171a77894903fd928262fb081f2&quot; ticket=&quot;123763&quot; desc=&quot;[perl #123763] Clear target on my $_; split&quot;/&gt;<br/>-<br/>-&lt;commit votes=&quot;&quot; id=&quot;6b2b48acae2d74dcbde18f956f6951b5b9aa468b&quot; ticket=&quot;123817&quot; desc=&quot;[perl #123817] Assert fail with attr in anon hash&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;813d2eb17164751c312a69e7c7c56dc71aad1ff1&quot; ticket=&quot;123849&quot; desc=&quot;[perl #123849] sv.c: Fix sv_clear -Do output&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;923ed5809c063091fb0f77dc6f1b8231d587d13e&quot; ticket=&quot;123960&quot; desc=&quot;[perl #123960] sv.c: Fix gp_free -Do output&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;9d58dbc453a86c9cbb3a131adcd1559fe0445a08&quot; ticket=&quot;123963&quot; desc=&quot;[perl #123963] qq[@&amp;lt;fullwidth digit&amp;gt;]&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;3d50185de85a756293c9c3954114bd5c2d08a460&quot; ticket=&quot;123847&quot; desc=&quot;[perl #123847] crash with *foo::=*bar::=*with_hash&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;b24768f02e4adcd11668f94274f5617c4a3f5379&quot; ticket=&quot;123995&quot; desc=&quot;[perl #123995] Assert fail with s;@{&amp;lt;&amp;lt;;&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;aab1202a8d4b691b16384fb41d2e2a06abf664e2&quot; ticket=&quot;123790&quot; desc=&quot;[perl #123790] Assert fail with *x=&amp;lt;y&amp;gt;&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;d655d9a2c4d4884d0edf5364a3aafbc8b0b8de38&quot; ticket=&quot;124099&quot; desc=&quot;[perl #124099] Wrong CvOUTSIDE in find_lexical_cv&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;b12396ac84cef7e23e1aac516fa676165ddfc790&quot; ticket=&quot;124187&quot; desc=&quot;[perl #124187] don&#39;t call pad_findlex() on a NULL CV&quot;/&gt;<br/>-&lt;commit votes=&quot;&quot; id=&quot;de0885da327045eed274d7f8913a58e6de0e0f30&quot; ticket=&quot;124385&quot; desc=&quot;null ptr deref in Perl_cv_forget_slab&quot;/&gt;<br/>-<br/>-&lt;/div&gt;<br/>-<br/> &lt;div&gt;&lt;h3&gt;Regression Fixes&lt;/h3&gt;<br/> <br/> &lt;commit votes=&quot;sprout&quot; id=&quot;08f800f8519574aea9e744ff83230fb93772652b&quot; ticket=&quot;128182&quot; desc=&quot;Fix crash with require $nonstring&quot;/&gt;<br/> <br/>-/div&gt;<br/>+&lt;/div&gt;<br/> <br/> &lt;div&gt;&lt;h3&gt;Build and Installation Fixes&lt;/h3&gt;<br/> <br/>diff --git a/votes-5.22.xml b/votes-5.22.xml<br/>index f5cf8b5..3b5bdb1 100644<br/>--- a/votes-5.22.xml<br/>+++ b/votes-5.22.xml<br/>@@ -2,7 +2,7 @@<br/> <br/> &lt;data&gt;<br/> <br/>-&lt;div&gt;&lt;h2&gt;Tickets Listed in #126920: 5.22.2 blockers&lt;/h2&gt;<br/>+&lt;div&gt;&lt;h2&gt;Tickets Listed in #128491: 5.22.3 blockers&lt;/h2&gt;<br/> <br/> &lt;/div&gt;<br/> <br/>diff --git a/votes-5.24.xml b/votes-5.24.xml<br/>index a6d5670..994cf56 100644<br/>--- a/votes-5.24.xml<br/>+++ b/votes-5.24.xml<br/>@@ -2,9 +2,20 @@<br/> <br/> &lt;data&gt;<br/> <br/>-&lt;div&gt;&lt;h2&gt;Tickets Listed in #xxxxx: 5.24.1 blockers&lt;/h2&gt;<br/>+&lt;div&gt;&lt;h2&gt;Tickets Listed in #128222: 5.24.1 blockers&lt;/h2&gt;<br/> <br/>-(No ticket exists yet.)<br/>+&lt;commit votes=&quot;&quot; id=&quot;f15d05806fb7522031b75cb5a8784727ae03b98a&quot; ticket=&quot;127952&quot; desc=&quot;[perl #127952] misoptimization for negated constant-ish on lhs of logop&quot; /&gt;<br/>+<br/>+&lt;commit votes=&quot;&quot; id=&quot;60a26c797bbff039ea7f861903732e7cceae415a&quot; ticket=&quot;128086&quot; desc=&quot;[perl #128086] Fix precedence in hv_ename_delete&quot; /&gt;<br/>+&lt;commit votes=&quot;&quot; id=&quot;7f1bd063e5aa5aeb26ed9c39db6864cc0ecd7a73&quot; ticket=&quot;128086&quot; desc=&quot;[perl #128086] Test the prev commit&quot; /&gt;<br/>+&lt;commit votes=&quot;&quot; id=&quot;8e5993c4dcf9a5b7c84224dd04946a4e49ec96fe&quot; ticket=&quot;128086&quot; desc=&quot;Dump empty-string ENAMEs as empty strings&quot; /&gt;<br/>+<br/>+&lt;commit votes=&quot;&quot; id=&quot;fcd130693a9e7a753f63a08691ff619ad91bf8eb&quot; ticket=&quot;128106&quot; desc=&quot;[perl #128106] Fix reset with non-globs&quot; /&gt;<br/>+&lt;commit votes=&quot;&quot; id=&quot;adec5bbf0b66ee5ebc2ba80eda2389bb68e23d86&quot; ticket=&quot;128131&quot; desc=&quot;fix symbol detection with gcc 6 link-time optimization (RT #128131)&quot; /&gt;<br/>+&lt;commit votes=&quot;&quot; id=&quot;d674449463a15ac3f36086e3a0bb3a9d02729887&quot; ticket=&quot;128171&quot; desc=&quot;[perl #128171] Fix assert fail with /@0{0*-&gt;@*/*0&quot; /&gt;<br/>+&lt;commit votes=&quot;&quot; id=&quot;08f800f8519574aea9e744ff83230fb93772652b&quot; ticket=&quot;128182&quot; desc=&quot;[perl #128182] Fix crash with require $nonstring&quot; /&gt;<br/>+&lt;commit votes=&quot;&quot; id=&quot;76734a3218e712760695898e424c2369ccdd49c6&quot; ticket=&quot;128204&quot; desc=&quot;[perl #128204] Fix crash with @a &amp;amp;.= etc.&quot; /&gt;<br/>+&lt;commit votes=&quot;&quot; id=&quot;4cb26c52ed90189e6e3564a4654b869fe4c4d3e6&quot; ticket=&quot;128219&quot; desc=&quot;PATCH: [perl #128219] typo in perlrecharclass&quot; /&gt;<br/> <br/> &lt;/div&gt;<br/> <br/>@@ -72,14 +83,14 @@ Perhaps just the removal of SETERRNO() from this.<br/> &lt;xsl:template match=&quot;/&quot;&gt;<br/> &lt;html&gt;<br/> &lt;head&gt;<br/>- &lt;title&gt;Cherry-pick votes for maint-5.22&lt;/title&gt;<br/>+ &lt;title&gt;Cherry-pick votes for maint-5.24&lt;/title&gt;<br/> &lt;style&gt;<br/> .accepted .ref a { color: #090 }<br/> .unvoted .ref a { color: #c00 }<br/> &lt;/style&gt;<br/> &lt;/head&gt;<br/> &lt;body&gt;<br/>- &lt;h1&gt;Cherry-pick votes for maint-5.22&lt;/h1&gt;<br/>+ &lt;h1&gt;Cherry-pick votes for maint-5.24&lt;/h1&gt;<br/> &lt;xsl:for-each select=&quot;/doc/data/div&quot;&gt;<br/> &lt;h2&gt;&lt;xsl:value-of select=&quot;h2&quot;/&gt;&lt;/h2&gt;<br/> &lt;h3&gt;&lt;xsl:value-of select=&quot;h3&quot;/&gt;&lt;/h3&gt;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47507.html Mon, 27 Jun 2016 12:31:05 +0000 [perl.git] branch sprout/pack-sep-in-string, created.v5.25.2-44-gb00321c by Father Chrysostomos In perl.git, the branch sprout/pack-sep-in-string has been created<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/b00321ceb71e521c8cef2ddc1cc63f1f890f901d?hp=0000000000000000000000000000000000000000&gt;<br/><br/> at b00321ceb71e521c8cef2ddc1cc63f1f890f901d (commit)<br/><br/>- Log -----------------------------------------------------------------<br/>commit b00321ceb71e521c8cef2ddc1cc63f1f890f901d<br/>Author: Father Chrysostomos &lt;sprout@cpan.org&gt;<br/>Date: Sun Jun 26 21:45:22 2016 -0700<br/><br/> [perl #128478] Restore former &quot;$foo::$bar&quot; parsing<br/> <br/> The function scan_word, in toke.c, is used to parse barewords. The<br/> scan_ident function is used to scan an identifier after a sigil.<br/> <br/> Prior to v5.17.9-108-g07f7264, both functions had their own parsing<br/> loops, and scan_ident actually had two, one for $foo and another<br/> for ${foo}.<br/> <br/> The state purpose of 07f7264 was to fix discrepancies in the parsing<br/> of $foo vs ${foo}, by making the two forms use the same parsing code.<br/> In accomplishing this, the commit in question merged not only the<br/> two loops in scan_ident, but all three loops, including the one in<br/> scan_word, by introducing a new function, parse_ident, that the<br/> others call.<br/> <br/> One result was that some logic appropriate only to scan_word started<br/> to be applied also to scan_ident; namely, that ::$ would be explicitly<br/> checked for and disallowed (the parsing would stop before the ::), for<br/> the sake of the &acirc;&#128;&#156;Bad name after Foo::&acirc;&#128;&#157; error.<br/> <br/> The consequence was that &quot;$foo::$bar&quot; started to be parsed as<br/> $foo.&quot;::&quot;.$bar, instead of $foo:: . $bar, as previously.<br/> <br/> Now, &quot;$foo::@bar&quot; was unaffected, so by fixing one form of inconsis-<br/> tency we ended up form, including B::Deparse bugs (because B::Deparse<br/> was not consistent with the core).<br/> <br/> This commit restores the previous behaviour by giving parse_ident an<br/> extra parameter, making the ::$ check optional.<br/>-----------------------------------------------------------------------<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47506.html Mon, 27 Jun 2016 04:55:50 +0000 [perl.git] branch blead, updated. v5.25.2-44-g7e169e8 by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/7e169e8432077cbdaf237f7238ca7a40fe1116ac?hp=c55dd03d1d6eb39244430d1cf2e0e94240d2b37a&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 7e169e8432077cbdaf237f7238ca7a40fe1116ac<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Sun Jun 26 23:13:00 2016 +0100<br/><br/> pp_aelemfast: skip av_fetch() for simple cases<br/> <br/> Where the av is non magic and has a positive key, try fetching<br/> the array element directly rather than calling av_fetch().<br/> <br/> This reduces the number of cycles required to run the nbody benchmark by<br/> about 5%.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> pp_hot.c | 22 +++++++++++++++++++---<br/> 1 file changed, 19 insertions(+), 3 deletions(-)<br/><br/>diff --git a/pp_hot.c b/pp_hot.c<br/>index 223169b..9c547d4 100644<br/>--- a/pp_hot.c<br/>+++ b/pp_hot.c<br/>@@ -819,11 +819,27 @@ PP(pp_aelemfast)<br/> AV * const av = PL_op-&gt;op_type == OP_AELEMFAST_LEX<br/> ? MUTABLE_AV(PAD_SV(PL_op-&gt;op_targ)) : GvAVn(cGVOP_gv);<br/> const U32 lval = PL_op-&gt;op_flags &amp; OPf_MOD;<br/>- SV** const svp = av_fetch(av, (I8)PL_op-&gt;op_private, lval);<br/>- SV *sv = (svp ? *svp : &amp;PL_sv_undef);<br/>+ const I8 key = (I8)PL_op-&gt;op_private;<br/>+ SV** svp;<br/>+ SV *sv;<br/>+<br/>+ assert(SvTYPE(av) == SVt_PVAV);<br/>+<br/>+ /* inlined av_fetch() for simple cases ... */<br/>+ if (!SvRMAGICAL(av) &amp;&amp; key &gt;= 0 &amp;&amp; key &lt;= AvFILLp(av)) {<br/>+ sv = AvARRAY(av)[key];<br/>+ if (sv &amp;&amp; !SvIS_FREED(sv)) {<br/>+ PUSHs(sv);<br/>+ RETURN;<br/>+ }<br/>+ }<br/>+<br/>+ /* ... else do it the hard way */<br/>+ svp = av_fetch(av, key, lval);<br/>+ sv = (svp ? *svp : &amp;PL_sv_undef);<br/> <br/> if (UNLIKELY(!svp &amp;&amp; lval))<br/>- DIE(aTHX_ PL_no_aelem, (int)(I8)PL_op-&gt;op_private);<br/>+ DIE(aTHX_ PL_no_aelem, (int)key);<br/> <br/> EXTEND(SP, 1);<br/> if (!lval &amp;&amp; SvRMAGICAL(av) &amp;&amp; SvGMAGICAL(sv)) /* see note in pp_helem() */<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47505.html Sun, 26 Jun 2016 22:24:05 +0000 [perl.git] branch blead, updated. v5.25.2-43-gc55dd03 by Father Chrysostomos In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/c55dd03d1d6eb39244430d1cf2e0e94240d2b37a?hp=fea12a3ecdb8d0cbe872c0aea1e2828112bcba12&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit c55dd03d1d6eb39244430d1cf2e0e94240d2b37a<br/>Author: Father Chrysostomos &lt;sprout@cpan.org&gt;<br/>Date: Sun Jun 26 10:57:26 2016 -0700<br/><br/> perlunicode typo<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> pod/perlunicode.pod | 2 +-<br/> 1 file changed, 1 insertion(+), 1 deletion(-)<br/><br/>diff --git a/pod/perlunicode.pod b/pod/perlunicode.pod<br/>index e3eebdb..959b800 100644<br/>--- a/pod/perlunicode.pod<br/>+++ b/pod/perlunicode.pod<br/>@@ -1843,7 +1843,7 @@ the XS level, and L&lt;perlapi/Unicode Support&gt; for the API details.<br/> Perl by default comes with the latest supported Unicode version built-in, but<br/> the goal is to allow you to change to use any earlier one. In Perls<br/> v5.20 and v5.22, however, the earliest usable version is Unicode 5.1.<br/>-Perl v5.18 and v5.24 are able to handle all earlier versions.<br/>+Perl v5.18 and v5.24 are able to handle all earlier versions.<br/> <br/> Download the files in the desired version of Unicode from the Unicode web<br/> site L&lt;http://www.unicode.org&gt;). These should replace the existing files in<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47504.html Sun, 26 Jun 2016 17:57:46 +0000 [perl.git] branch blead, updated. v5.25.2-42-gfea12a3 by Karl Williamson In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/fea12a3ecdb8d0cbe872c0aea1e2828112bcba12?hp=793b60b28c235d675aa6db799d335a684f9ee704&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit fea12a3ecdb8d0cbe872c0aea1e2828112bcba12<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Sat Jun 25 22:37:38 2016 -0600<br/><br/> Update perlunicode<br/> <br/> This fixes a couple of nits, but mostly it updates the text to<br/> correspond with changes in Unicode UTS#18, concerning regular<br/> expressions, and Perl compatibility with what it says.<br/> <br/> Note that though this Unicode document&#39;s text is written as if it were<br/> imposing requirements, it is not technically a part of the Unicode<br/> standard, so its &quot;requirements&quot; are merely suggestions or guidelines.<br/> <br/> It turns out that several of the &quot;requirements&quot; that Perl didn&#39;t meet<br/> have been retracted by Unicode (as effectively unimplementable), so the<br/> Perl Unicode support is actually better than it appeared, and in fact,<br/> is almost complete at the first 2 (of 3) levels of support discussed in<br/> UTS#18.<br/><br/>M pod/perlunicode.pod<br/><br/>commit d2b457d752c03448e8006f00a3761b5f542000d6<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Sat Jun 25 22:37:21 2016 -0600<br/><br/> perlunicode: Fix mistatement<br/> <br/> v5.24 reinstated the ability to compile any earlier version of the<br/> Unicode standard into Perl, but this pod did not get updated.<br/><br/>M pod/perlunicode.pod<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> pod/perlunicode.pod | 174 ++++++++++++++++++++++++++++------------------------<br/> 1 file changed, 95 insertions(+), 79 deletions(-)<br/><br/>diff --git a/pod/perlunicode.pod b/pod/perlunicode.pod<br/>index 775a430..e3eebdb 100644<br/>--- a/pod/perlunicode.pod<br/>+++ b/pod/perlunicode.pod<br/>@@ -75,7 +75,7 @@ utf8&gt;&gt; is needed.&gt; (See L&lt;utf8&gt;).<br/> <br/> =item C&lt;BOM&gt;-marked scripts and L&lt;UTF-16|/Unicode Encodings&gt; scripts autodetected<br/> <br/>-However, if a Perl script begins with the Unicode C&lt;BOM&gt; (UTF-16LE,<br/>+If a Perl script begins with the Unicode C&lt;BOM&gt; (UTF-16LE,<br/> UTF16-BE, or UTF-8), or if the script looks like non-C&lt;BOM&gt;-marked<br/> UTF-16 of either endianness, Perl will correctly read in the script as<br/> the appropriate Unicode encoding. (C&lt;BOM&gt;-less UTF-8 cannot be<br/>@@ -1069,38 +1069,40 @@ See L&lt;Encode&gt;.<br/> =head2 Unicode Regular Expression Support Level<br/> <br/> The following list of Unicode supported features for regular expressions describes<br/>-all features currently directly supported by core Perl. The references to &quot;Level N&quot;<br/>-and the section numbers refer to the Unicode Technical Standard #18,<br/>-&quot;Unicode Regular Expressions&quot;, version 13, from August 2008.<br/>-<br/>-=over 4<br/>-<br/>-=item *<br/>-<br/>-Level 1 - Basic Unicode Support<br/>-<br/>- RL1.1 Hex Notation - done [1]<br/>- RL1.2 Properties - done [2][3]<br/>- RL1.2a Compatibility Properties - done [4]<br/>- RL1.3 Subtraction and Intersection - experimental [5]<br/>- RL1.4 Simple Word Boundaries - done [6]<br/>- RL1.5 Simple Loose Matches - done [7]<br/>- RL1.6 Line Boundaries - MISSING [8][9]<br/>- RL1.7 Supplementary Code Points - done [10]<br/>+all features currently directly supported by core Perl. The references<br/>+to &quot;Level I&lt;N&gt;&quot; and the section numbers refer to<br/>+L&lt;UTS#18 &quot;Unicode Regular Expressions&quot;|http://www.unicode.org/reports/tr18&gt;,<br/>+version 13, November 2013.<br/>+<br/>+=head3 Level 1 - Basic Unicode Support<br/>+<br/>+ RL1.1 Hex Notation - Done [1]<br/>+ RL1.2 Properties - Done [2]<br/>+ RL1.2a Compatibility Properties - Done [3]<br/>+ RL1.3 Subtraction and Intersection - Experimental [4]<br/>+ RL1.4 Simple Word Boundaries - Done [5]<br/>+ RL1.5 Simple Loose Matches - Done [6]<br/>+ RL1.6 Line Boundaries - Partial [7]<br/>+ RL1.7 Supplementary Code Points - Done [8]<br/> <br/> =over 4<br/> <br/> =item [1] C&lt;\N{U+...}&gt; and C&lt;\x{...}&gt;<br/> <br/>-=item [2] C&lt;\p{...}&gt; C&lt;\P{...}&gt;<br/>+=item [2]<br/>+C&lt;\p{...}&gt; C&lt;\P{...}&gt;. This requirement is for a minimal list of<br/>+properties. Perl supports these and all other Unicode character<br/>+properties, as R2.7 asks (see L&lt;/&quot;Unicode Character Properties&quot;&gt; above).<br/> <br/>-=item [3] supports not only minimal list, but all Unicode character<br/>-properties (see Unicode Character Properties above)<br/>+=item [3]<br/>+Perl has C&lt;\d&gt; C&lt;\D&gt; C&lt;\s&gt; C&lt;\S&gt; C&lt;\w&gt; C&lt;\W&gt; C&lt;\X&gt; C&lt;[:I&lt;prop&gt;:]&gt;<br/>+C&lt;[:^I&lt;prop&gt;:]&gt;, plus all the properties specified by<br/>+L&lt;http://www.unicode.org/reports/tr18/#Compatibility_Properties&gt;. These<br/>+are described above in L&lt;/Other Properties&gt;<br/> <br/>-=item [4] C&lt;\d&gt; C&lt;\D&gt; C&lt;\s&gt; C&lt;\S&gt; C&lt;\w&gt; C&lt;\W&gt; C&lt;\X&gt; C&lt;[:I&lt;prop&gt;:]&gt;<br/>-C&lt;[:^I&lt;prop&gt;:]&gt;<br/>+=item [4]<br/> <br/>-=item [5] The experimental feature starting in v5.18 C&lt;&quot;(?[...])&quot;&gt; accomplishes<br/>+The experimental feature C&lt;&quot;(?[...])&quot;&gt; starting in v5.18 accomplishes<br/> this.<br/> <br/> See L&lt;perlre/(?[ ])&gt;. If you don&#39;t want to use an experimental<br/>@@ -1109,7 +1111,6 @@ feature, you can use one of the following:<br/> =over 4<br/> <br/> =item *<br/>-<br/> Regular expression lookahead<br/> <br/> You can mimic class subtraction using lookahead.<br/>@@ -1143,9 +1144,12 @@ C&lt;&quot;+&quot;&gt; for union, C&lt;&quot;-&quot;&gt; for removal (set-difference), C&lt;&quot;&amp;&quot;&gt; for intersection<br/> <br/> =back<br/> <br/>-=item [6] C&lt;\b&gt; C&lt;\B&gt;<br/>+=item [5]<br/>+C&lt;\b&gt; C&lt;\B&gt; meet most, but not all, the details of this requirement, but<br/>+C&lt;\b{wb}&gt; and C&lt;\B{wb}&gt; do, as well as the stricter R2.3.<br/>+<br/>+=item [6]<br/> <br/>-=item [7]<br/> Note that Perl does Full case-folding in matching, not Simple:<br/> <br/> For example C&lt;U+1F88&gt; is equivalent to C&lt;U+1F00 U+03B9&gt;, instead of just<br/>@@ -1154,9 +1158,18 @@ letters with certain modifiers: the Full case-folding decomposes the<br/> letter, while the Simple case-folding would map it to a single<br/> character.<br/> <br/>-=item [8]<br/>-Perl treats C&lt;\n&gt; as the start- and end-line delimiter. Unicode<br/>-specifies more characters that should be so-interpreted.<br/>+=item [7]<br/>+<br/>+The reason this is considered to be only partially implemented is that<br/>+Perl has L&lt;C&lt;qrE&lt;sol&gt;\b{lb}E&lt;sol&gt;&gt;|perlrebackslash/\b{lb}&gt; and<br/>+C&lt;L&lt;Unicode::LineBreak&gt;&gt; that are conformant with<br/>+L&lt;UAX#14 &quot;Unicode Line Breaking Algorithm&quot;|http://www.unicode.org/reports/tr14&gt;.<br/>+The regular expression construct provides default behavior, while the<br/>+heavier-weight module provides customizable line breaking.<br/>+<br/>+But Perl treats C&lt;\n&gt; as the start- and end-line<br/>+delimiter, whereas Unicode specifies more characters that should be<br/>+so-interpreted.<br/> <br/> These are:<br/> <br/>@@ -1176,63 +1189,66 @@ Also, lines should not be split within C&lt;CRLF&gt; (i.e. there is no<br/> empty line between C&lt;\r&gt; and C&lt;\n&gt;). For C&lt;CRLF&gt;, try the C&lt;:crlf&gt;<br/> layer (see L&lt;PerlIO&gt;).<br/> <br/>-=item [9] But C&lt;qr/\b{lb}/&gt; and C&lt;L&lt;Unicode::LineBreak&gt;&gt; are available.<br/>-<br/>-L&lt;C&lt;qrE&lt;sol&gt;\b{lb}E&lt;sol&gt;&gt;|perlrebackslash/\b{lb}&gt; supplies default line<br/>-breaking conformant with<br/>-L&lt;UAX#14 &quot;Unicode Line Breaking Algorithm&quot;|http://www.unicode.org/reports/tr14&gt;.<br/>-<br/>-And, the module C&lt;L&lt;Unicode::LineBreak&gt;&gt; also conformant with UAX#14,<br/>-provides customizable line breaking.<br/>-<br/>-=item [10]<br/>+=item [8]<br/> UTF-8/UTF-EBDDIC used in Perl allows not only C&lt;U+10000&gt; to<br/> C&lt;U+10FFFF&gt; but also beyond C&lt;U+10FFFF&gt;<br/> <br/> =back<br/> <br/>-=item *<br/>+=head3 Level 2 - Extended Unicode Support<br/> <br/>-Level 2 - Extended Unicode Support<br/>+ RL2.1 Canonical Equivalents - Retracted [9]<br/>+ by Unicode<br/>+ RL2.2 Extended Grapheme Clusters - Partial [10]<br/>+ RL2.3 Default Word Boundaries - Done [11]<br/>+ RL2.4 Default Case Conversion - Done<br/>+ RL2.5 Name Properties - Done<br/>+ RL2.6 Wildcard Properties - Missing<br/>+ RL2.7 Full Properties - Done<br/> <br/>- RL2.1 Canonical Equivalents - MISSING [10][11]<br/>- RL2.2 Default Grapheme Clusters - MISSING [12]<br/>- RL2.3 Default Word Boundaries - DONE [14]<br/>- RL2.4 Default Loose Matches - MISSING [15]<br/>- RL2.5 Name Properties - DONE<br/>- RL2.6 Wildcard Properties - MISSING<br/>+=over 4<br/> <br/>- [10] see UAX#15 &quot;Unicode Normalization Forms&quot;<br/>- [11] have Unicode::Normalize but not integrated to regexes<br/>- [12] have \X and \b{gcb} but we don&#39;t have a &quot;Grapheme Cluster<br/>- Mode&quot;<br/>- [14] see UAX#29, Word Boundaries<br/>- [15] This is covered in Chapter 3.13 (in Unicode 6.0)<br/>+=item [9]<br/>+Unicode has rewritten this portion of UTS#18 to say that getting<br/>+canonical equivalence (see UAX#15<br/>+L&lt;&quot;Unicode Normalization Forms&quot;|http://www.unicode.org/reports/tr15&gt;)<br/>+is basically to be done at the programmer level. Use NFD to write<br/>+both your regular expressions and text to match them against (you<br/>+can use L&lt;Unicode::Normalize&gt;).<br/> <br/>-=item *<br/>+=item [10]<br/>+Perl has C&lt;\X&gt; and C&lt;\b{gcb}&gt; but we don&#39;t have a &quot;Grapheme Cluster Mode&quot;.<br/>+<br/>+=item [11] see<br/>+L&lt;UAX#29 &quot;Unicode Text Segmentation&quot;|http://www.unicode.org/reports/tr29&gt;,<br/>+<br/>+=back<br/>+<br/>+=head3 Level 3 - Tailored Support<br/>+<br/>+ RL3.1 Tailored Punctuation - Missing<br/>+ RL3.2 Tailored Grapheme Clusters - Missing [12]<br/>+ RL3.3 Tailored Word Boundaries - Missing<br/>+ RL3.4 Tailored Loose Matches - Retracted by Unicode<br/>+ RL3.5 Tailored Ranges - Retracted by Unicode<br/>+ RL3.6 Context Matching - Missing [13]<br/>+ RL3.7 Incremental Matches - Missing<br/>+ RL3.8 Unicode Set Sharing - Unicode is proposing<br/>+ to retract this<br/>+ RL3.9 Possible Match Sets - Missing<br/>+ RL3.10 Folded Matching - Retracted by Unicode<br/>+ RL3.11 Submatchers - Missing<br/>+<br/>+=over 4<br/>+<br/>+=item [12]<br/>+Perl has L&lt;Unicode::Collate&gt;, but it isn&#39;t integrated with regular<br/>+expressions. See<br/>+L&lt;UTS#10 &quot;Unicode Collation Algorithms&quot;|http://www.unicode.org/reports/tr10&gt;.<br/> <br/>-Level 3 - Tailored Support<br/>-<br/>- RL3.1 Tailored Punctuation - MISSING<br/>- RL3.2 Tailored Grapheme Clusters - MISSING [17][18]<br/>- RL3.3 Tailored Word Boundaries - MISSING<br/>- RL3.4 Tailored Loose Matches - MISSING<br/>- RL3.5 Tailored Ranges - MISSING<br/>- RL3.6 Context Matching - MISSING [19]<br/>- RL3.7 Incremental Matches - MISSING<br/>- ( RL3.8 Unicode Set Sharing )<br/>- RL3.9 Possible Match Sets - MISSING<br/>- RL3.10 Folded Matching - MISSING [20]<br/>- RL3.11 Submatchers - MISSING<br/>-<br/>- [17] see UAX#10 &quot;Unicode Collation Algorithms&quot;<br/>- [18] have Unicode::Collate but not integrated to regexes<br/>- [19] have (?&lt;=x) and (?=x), but lookaheads or lookbehinds<br/>- should see outside of the target substring<br/>- [20] need insensitive matching for linguistic features other<br/>- than case; for example, hiragana to katakana, wide and<br/>- narrow, simplified Han to traditional Han (see UTR#30<br/>- &quot;Character Foldings&quot;)<br/>+=item [13]<br/>+Perl has C&lt;(?&lt;=x)&gt; and C&lt;(?=x)&gt;, but lookaheads or lookbehinds should<br/>+see outside of the target substring<br/> <br/> =back<br/> <br/>@@ -1827,7 +1843,7 @@ the XS level, and L&lt;perlapi/Unicode Support&gt; for the API details.<br/> Perl by default comes with the latest supported Unicode version built-in, but<br/> the goal is to allow you to change to use any earlier one. In Perls<br/> v5.20 and v5.22, however, the earliest usable version is Unicode 5.1.<br/>-Perl v5.18 is able to handle all earlier versions.<br/>+Perl v5.18 and v5.24 are able to handle all earlier versions.<br/> <br/> Download the files in the desired version of Unicode from the Unicode web<br/> site L&lt;http://www.unicode.org&gt;). These should replace the existing files in<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47503.html Sun, 26 Jun 2016 16:19:04 +0000 [perl.git] branch blead, updated. v5.25.2-40-g793b60b by Craig A. Berry In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/793b60b28c235d675aa6db799d335a684f9ee704?hp=d6fee47793da70d3a1a736cda304e76d8f3c3354&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 793b60b28c235d675aa6db799d335a684f9ee704<br/>Author: Craig A. Berry &lt;craigberry@mac.com&gt;<br/>Date: Sat Jun 25 15:47:43 2016 -0500<br/><br/> Skip EUMM subdirscomplex test on VMS.<br/> <br/> This tracks the upstream commit at:<br/> <br/> https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/2725f2d850ba1bf545f19317f4407c0909fb16b7<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> Porting/Maintainers.pl | 2 +-<br/> cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm | 2 +-<br/> t/porting/customized.dat | 1 +<br/> 3 files changed, 3 insertions(+), 2 deletions(-)<br/><br/>diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl<br/>index 0a97c3a..e7de2a1 100755<br/>--- a/Porting/Maintainers.pl<br/>+++ b/Porting/Maintainers.pl<br/>@@ -474,7 +474,7 @@ use File::Glob qw(:case);<br/> &#39;README.packaging&#39;,<br/> &#39;lib/ExtUtils/MakeMaker/version/vpp.pm&#39;,<br/> ],<br/>- &#39;CUSTOMIZED&#39; =&gt; [ qw( t/basic.t ) ],<br/>+ &#39;CUSTOMIZED&#39; =&gt; [ qw( t/basic.t t/lib/MakeMaker/Test/Setup/XS.pm ) ],<br/> },<br/> <br/> &#39;ExtUtils::Manifest&#39; =&gt; {<br/>diff --git a/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm b/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm<br/>index 2c3ac61..f557875 100644<br/>--- a/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm<br/>+++ b/cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm<br/>@@ -326,7 +326,7 @@ sub list_dynamic {<br/> $^O ne &#39;MSWin32&#39; ? (<br/> [ &#39;bscode&#39;, &#39;&#39;, &#39;&#39; ],<br/> [ &#39;bscodemulti&#39;, &#39;&#39;, &#39;&#39; ],<br/>- [ &#39;subdirscomplex&#39;, &#39;&#39;, &#39;&#39; ],<br/>+ $^O ne &#39;VMS&#39; ? ([ &#39;subdirscomplex&#39;, &#39;&#39;, &#39;&#39; ]) : (),<br/> ) : (), # DynaLoader different<br/> [ &#39;subdirs&#39;, &#39;&#39;, &#39;&#39; ],<br/> [ &#39;subdirsstatic&#39;, &#39; LINKTYPE=dynamic&#39;, &#39; LINKTYPE=dynamic&#39; ],<br/>diff --git a/t/porting/customized.dat b/t/porting/customized.dat<br/>index 984a346..bb68a05 100644<br/>--- a/t/porting/customized.dat<br/>+++ b/t/porting/customized.dat<br/>@@ -2,6 +2,7 @@ Encode cpan/Encode/Byte/Makefile.PL 54f446297d614331ef3f51e8310faff27cc44f90<br/> Encode cpan/Encode/encoding.pm 51c19efc9bfe8467d6ae12a4654f6e7f980715bf<br/> ExtUtils::Constant cpan/ExtUtils-Constant/t/Constant.t a0369c919e216fb02767a637666bb4577ad79b02<br/> ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/t/basic.t b7ee8691baf37197bf4249534f429fcf28f5cedf<br/>+ExtUtils::MakeMaker cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm 27aaa6acefd4223b57de74299314c19891ed17bc<br/> File::Path cpan/File-Path/lib/File/Path.pm fd8ce4420a0c113d3f47dd3223859743655c1da8<br/> File::Path cpan/File-Path/t/Path_win32.t 94b9276557ce7f80b91f6fd9bfa7a0cd9bf9683e<br/> Math::BigRat cpan/Math-BigRat/lib/Math/BigRat.pm 6eabc68e04f67694f6fe523e64eb013fc337ca5b<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47502.html Sat, 25 Jun 2016 21:43:34 +0000 [perl.git] branch blead, updated. v5.25.2-39-gd6fee47 by Karl Williamson In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/d6fee47793da70d3a1a736cda304e76d8f3c3354?hp=12e0223607f17a2664c9be5124ee139fb06b7f55&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit d6fee47793da70d3a1a736cda304e76d8f3c3354<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Tue Jun 14 22:22:31 2016 -0600<br/><br/> perluniprops: Fix pod<br/> <br/> Commit 3d6c5fec8cb3579a30be60177e31058bc31285d7 changed mktables to<br/> change to slightly less nice pod in order to remove a warning that was a<br/> bug in Pod::Checker. Pod::Checker has now been fixed, and the current<br/> commit reinstates the old pod.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> charclass_invlists.h | 2 +-<br/> lib/unicore/mktables | 28 +++++++---------------------<br/> regcharclass.h | 2 +-<br/> 3 files changed, 9 insertions(+), 23 deletions(-)<br/><br/>diff --git a/charclass_invlists.h b/charclass_invlists.h<br/>index c53c2a9..3791381 100644<br/>--- a/charclass_invlists.h<br/>+++ b/charclass_invlists.h<br/>@@ -91558,7 +91558,7 @@ static const U8 WB_table[24][24] = {<br/> * 37f6186253da9824bdb27f4ad867bfe8c25d4dc6bdb2f05585e40a034675a348 lib/unicore/extracted/DLineBreak.txt<br/> * ef24061b5a5dc93d7e90c2e34530ec757180ee75d872cba65ffc946e52624ae8 lib/unicore/extracted/DNumType.txt<br/> * a197371fec9a1b517058b440841f60f9378d81682084eef8db22a88cb2f96e90 lib/unicore/extracted/DNumValues.txt<br/>- * 4fbcc500e9215a31d39fa3fba793a4c893285e7d19912fc86fa6518120ecc4e1 lib/unicore/mktables<br/>+ * 58e546458da91e33d5cdacd9ca1b5a87868701a1e7e4eea6b0c4cf0c62fff431 lib/unicore/mktables<br/> * cdecb300baad839a6f62791229f551a4fa33f3cbdca08e378dc976466354e778 lib/unicore/version<br/> * 913d2f93f3cb6cdf1664db888bf840bc4eb074eef824e082fceda24a9445e60c regen/charset_translations.pl<br/> * 11011bc761487f5a63c8135e67248394d4cdff6f8f204a41cdfbdc8131e79406 regen/mk_invlists.pl<br/>diff --git a/lib/unicore/mktables b/lib/unicore/mktables<br/>index e8a2831..30ba881 100644<br/>--- a/lib/unicore/mktables<br/>+++ b/lib/unicore/mktables<br/>@@ -17017,34 +17017,20 @@ B&lt;Legend summary:&gt;<br/> <br/> =over 4<br/> <br/>-=item *<br/>+=item Z&lt;&gt;B&lt;*&gt; is a wild-card<br/> <br/>-B&lt;*&gt; is a wild-card<br/>-<br/>-=item *<br/>-<br/>-B&lt;(\\d+)&gt; in the info column gives the number of Unicode code points matched<br/>+=item B&lt;(\\d+)&gt; in the info column gives the number of Unicode code points matched<br/> by this property.<br/> <br/>-=item *<br/>-<br/>-B&lt;$DEPRECATED&gt; means this is deprecated.<br/>-<br/>-=item *<br/>-<br/>-B&lt;$OBSOLETE&gt; means this is obsolete.<br/>-<br/>-=item *<br/>-<br/>-B&lt;$STABILIZED&gt; means this is stabilized.<br/>+=item B&lt;$DEPRECATED&gt; means this is deprecated.<br/> <br/>-=item *<br/>+=item B&lt;$OBSOLETE&gt; means this is obsolete.<br/> <br/>-B&lt;$STRICTER&gt; means tighter (stricter) name matching applies.<br/>+=item B&lt;$STABILIZED&gt; means this is stabilized.<br/> <br/>-=item *<br/>+=item B&lt;$STRICTER&gt; means tighter (stricter) name matching applies.<br/> <br/>-B&lt;$DISCOURAGED&gt; means use of this form is discouraged, and may not be<br/>+=item B&lt;$DISCOURAGED&gt; means use of this form is discouraged, and may not be<br/> stable.<br/> <br/> =back<br/>diff --git a/regcharclass.h b/regcharclass.h<br/>index 325f7f3..47c8d8a 100644<br/>--- a/regcharclass.h<br/>+++ b/regcharclass.h<br/>@@ -1895,7 +1895,7 @@<br/> * 37f6186253da9824bdb27f4ad867bfe8c25d4dc6bdb2f05585e40a034675a348 lib/unicore/extracted/DLineBreak.txt<br/> * ef24061b5a5dc93d7e90c2e34530ec757180ee75d872cba65ffc946e52624ae8 lib/unicore/extracted/DNumType.txt<br/> * a197371fec9a1b517058b440841f60f9378d81682084eef8db22a88cb2f96e90 lib/unicore/extracted/DNumValues.txt<br/>- * 4fbcc500e9215a31d39fa3fba793a4c893285e7d19912fc86fa6518120ecc4e1 lib/unicore/mktables<br/>+ * 58e546458da91e33d5cdacd9ca1b5a87868701a1e7e4eea6b0c4cf0c62fff431 lib/unicore/mktables<br/> * cdecb300baad839a6f62791229f551a4fa33f3cbdca08e378dc976466354e778 lib/unicore/version<br/> * 913d2f93f3cb6cdf1664db888bf840bc4eb074eef824e082fceda24a9445e60c regen/charset_translations.pl<br/> * d9c04ac46bdd81bb3e26519f2b8eb6242cb12337205add3f7cf092b0c58dccc4 regen/regcharclass.pl<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47501.html Sat, 25 Jun 2016 19:28:53 +0000 [perl.git] branch blead, updated. v5.25.2-38-g12e0223 by Lukas Mai In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/12e0223607f17a2664c9be5124ee139fb06b7f55?hp=9e5cda6b852ca831004628051cf32c1576146452&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 12e0223607f17a2664c9be5124ee139fb06b7f55<br/>Author: Lukas Mai &lt;l.mai@web.de&gt;<br/>Date: Fri Jun 24 10:15:37 2016 +0200<br/><br/> perlnewmod: more updates<br/> <br/> - hyperlink WWW::Mechanize<br/> - direct to metacpan.org, not search.cpan.org<br/> - changes should go in Changes, not README<br/> - mention &#39;make distcheck&#39;<br/> - mention &#39;cpan-upload&#39;<br/> - remove paragraph about announcing to the modules list and registering<br/> a namespace<br/> - hyperlink some urls<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> pod/perlnewmod.pod | 30 ++++++++++++++++--------------<br/> t/porting/known_pod_issues.dat | 2 ++<br/> 2 files changed, 18 insertions(+), 14 deletions(-)<br/><br/>diff --git a/pod/perlnewmod.pod b/pod/perlnewmod.pod<br/>index 658fcf6..f3e7c69 100644<br/>--- a/pod/perlnewmod.pod<br/>+++ b/pod/perlnewmod.pod<br/>@@ -78,7 +78,7 @@ Dig into a bunch of modules to see how they&#39;re written. I&#39;d suggest<br/> starting with L&lt;Text::Tabs|Text::Tabs&gt;, since it&#39;s in the standard<br/> library and is nice and simple, and then looking at something a little<br/> more complex like L&lt;File::Copy|File::Copy&gt;. For object oriented<br/>-code, C&lt;WWW::Mechanize&gt; or the C&lt;Email::*&gt; modules provide some good<br/>+code, L&lt;WWW::Mechanize&gt; or the C&lt;Email::*&gt; modules provide some good<br/> examples.<br/> <br/> These should give you an overall feel for how modules are laid out and<br/>@@ -88,7 +88,7 @@ written.<br/> <br/> There are a lot of modules on CPAN, and it&#39;s easy to miss one that&#39;s<br/> similar to what you&#39;re planning on contributing. Have a good plough<br/>-through the L&lt;http://search.cpan.org&gt; and make sure you&#39;re not the one<br/>+through L&lt;http://metacpan.org&gt; and make sure you&#39;re not the one<br/> reinventing the wheel!<br/> <br/> =item Discuss the need<br/>@@ -212,13 +212,18 @@ more than just checking your module will compile.<br/> L&lt;Test::Simple|Test::Simple&gt; and L&lt;Test::More|Test::More&gt; are good<br/> places to start when writing a test suite.<br/> <br/>-=item Write the README<br/>+=item Write the F&lt;README&gt;<br/> <br/> If you&#39;re uploading to CPAN, the automated gremlins will extract the<br/> README file and place that in your CPAN directory. It&#39;ll also appear in<br/> the main F&lt;by-module&gt; and F&lt;by-category&gt; directories if you make it onto<br/> the modules list. It&#39;s a good idea to put here what the module actually<br/>-does in detail, and the user-visible changes since the last release.<br/>+does in detail.<br/>+<br/>+=item Write F&lt;Changes&gt;<br/>+<br/>+Add any user-visible changes since the last release to your F&lt;Changes&gt;<br/>+file.<br/> <br/> =back<br/> <br/>@@ -232,14 +237,15 @@ Every developer publishing modules on CPAN needs a CPAN ID. Visit<br/> C&lt;http://pause.perl.org/&gt;, select &quot;Request PAUSE Account&quot;, and wait for<br/> your request to be approved by the PAUSE administrators.<br/> <br/>-=item C&lt;perl Makefile.PL; make test; make dist&gt;<br/>+=item C&lt;perl Makefile.PL; make test; make distcheck; make dist&gt;<br/> <br/> Once again, C&lt;module-starter&gt; or C&lt;h2xs&gt; has done all the work for you.<br/> They produce the standard C&lt;Makefile.PL&gt; you see when you download and<br/> install modules, and this produces a Makefile with a C&lt;dist&gt; target.<br/> <br/> Once you&#39;ve ensured that your module passes its own tests - always a<br/>-good thing to make sure - you can C&lt;make dist&gt;, and the Makefile will<br/>+good thing to make sure - you can C&lt;make distcheck&gt; to make sure<br/>+everything looks OK, followed by C&lt;make dist&gt;, and the Makefile will<br/> hopefully produce you a nice tarball of your module, ready for upload.<br/> <br/> =item Upload the tarball<br/>@@ -248,12 +254,8 @@ The email you got when you received your CPAN ID will tell you how to<br/> log in to PAUSE, the Perl Authors Upload SErver. From the menus there,<br/> you can upload your module to CPAN.<br/> <br/>-=item Announce to the modules list<br/>-<br/>-Once uploaded, it&#39;ll sit unnoticed in your author directory. If you want<br/>-it connected to the rest of the CPAN, you&#39;ll need to go to &quot;Register<br/>-Namespace&quot; on PAUSE. Once registered, your module will appear in the<br/>-by-module and by-category listings on CPAN.<br/>+Alternatively you can use the F&lt;cpan-upload&gt; script, part of the<br/>+L&lt;CPAN::Uploader&gt; distribution on CPAN.<br/> <br/> =item Fix bugs!<br/> <br/>@@ -274,5 +276,5 @@ Updated by Kirrily &quot;Skud&quot; Robert, C&lt;skud@cpan.org&gt;<br/> L&lt;perlmod&gt;, L&lt;perlmodlib&gt;, L&lt;perlmodinstall&gt;, L&lt;h2xs&gt;, L&lt;strict&gt;,<br/> L&lt;Carp&gt;, L&lt;Exporter&gt;, L&lt;perlpod&gt;, L&lt;Test::Simple&gt;, L&lt;Test::More&gt;<br/> L&lt;ExtUtils::MakeMaker&gt;, L&lt;Module::Build&gt;, L&lt;Module::Starter&gt;<br/>-http://www.cpan.org/ , Ken Williams&#39;s tutorial on building your own<br/>-module at http://mathforum.org/~ken/perl_modules.html<br/>+L&lt;http://www.cpan.org/&gt;, Ken Williams&#39;s tutorial on building your own<br/>+module at L&lt;http://mathforum.org/~ken/perl_modules.html&gt;<br/>diff --git a/t/porting/known_pod_issues.dat b/t/porting/known_pod_issues.dat<br/>index fd1f407..c5d397a 100644<br/>--- a/t/porting/known_pod_issues.dat<br/>+++ b/t/porting/known_pod_issues.dat<br/>@@ -54,6 +54,7 @@ connect(2)<br/> Coro<br/> cpan2dist(1)<br/> CPAN::Changes::Spec<br/>+CPAN::Uploader<br/> cpanp(1)<br/> CPANPLUS<br/> crypt(3)<br/>@@ -311,6 +312,7 @@ Want<br/> wget(1)<br/> Win32::Locale<br/> write(2)<br/>+WWW::Mechanize<br/> XML::LibXML<br/> YAML<br/> YAML::Syck<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47500.html Fri, 24 Jun 2016 08:36:33 +0000 [perl.git] branch blead, updated. v5.25.2-37-g9e5cda6 by Father Chrysostomos In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/9e5cda6b852ca831004628051cf32c1576146452?hp=10f94efda718d740901a1240ef33924a21edf4f5&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 9e5cda6b852ca831004628051cf32c1576146452<br/>Author: Father Chrysostomos &lt;sprout@cpan.org&gt;<br/>Date: Thu Jun 23 21:57:09 2016 -0700<br/><br/> [perl #128238] Crash with non-stash in stash<br/> <br/> This is a follow-up to e7acdfe976f. Even if the name of the stash<br/> entry ends with ::, it may not itself contain a real stash (though<br/> this only happens with code that assigns directly to stash entries,<br/> which has undefined behaviour according to perlmod), so skip hashes<br/> that are not stashes.<br/><br/>M gv.c<br/>M t/op/stash.t<br/><br/>commit 59fe5989cd9d8fa61d51c7fceb20334ffe0d194d<br/>Author: Father Chrysostomos &lt;sprout@cpan.org&gt;<br/>Date: Thu Jun 23 18:23:27 2016 -0700<br/><br/> stash.t: Remove tyrone::slothrop<br/> <br/> etc.<br/> <br/> Leftovers left behind by e35475de.<br/><br/>M t/op/stash.t<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> gv.c | 4 ++--<br/> t/op/stash.t | 16 +++++++++-------<br/> 2 files changed, 11 insertions(+), 9 deletions(-)<br/><br/>diff --git a/gv.c b/gv.c<br/>index 2b3bdfa..dff611e 100644<br/>--- a/gv.c<br/>+++ b/gv.c<br/>@@ -2411,10 +2411,10 @@ Perl_gv_check(pTHX_ HV *stash)<br/> <br/> PERL_ARGS_ASSERT_GV_CHECK;<br/> <br/>- if (!HvARRAY(stash))<br/>+ if (!SvOOK(stash))<br/> return;<br/> <br/>- assert(SvOOK(stash));<br/>+ assert(HvARRAY(stash));<br/> <br/> for (i = 0; i &lt;= (I32) HvMAX(stash); i++) {<br/> const HE *entry;<br/>diff --git a/t/op/stash.t b/t/op/stash.t<br/>index ec795a9..fe42700 100644<br/>--- a/t/op/stash.t<br/>+++ b/t/op/stash.t<br/>@@ -7,7 +7,7 @@ BEGIN {<br/> <br/> BEGIN { require &quot;./test.pl&quot;; }<br/> <br/>-plan( tests =&gt; 53 );<br/>+plan( tests =&gt; 54 );<br/> <br/> # Used to segfault (bug #15479)<br/> fresh_perl_like(<br/>@@ -36,11 +36,6 @@ SKIP: {<br/> );<br/> }<br/> <br/>-package tyrone::slothrop;<br/>-$bongo::shaftsbury::scalar = 1;<br/>-<br/>-package main;<br/>-<br/> # Used to warn<br/> # Unbalanced string table refcount: (1) for &quot;A::&quot; during global destruction.<br/> # for ithreads.<br/>@@ -347,4 +342,11 @@ is runperl(<br/> stderr =&gt; 1,<br/> ),<br/> &quot;ok\n&quot;,<br/>- &quot;[perl #128238] don&#39;t treat %: as a stash (needs 2 colons)&quot;<br/>+ &quot;[perl #128238] don&#39;t treat %: as a stash (needs 2 colons)&quot;;<br/>+<br/>+is runperl(<br/>+ prog =&gt; &#39;BEGIN { $::{q|foo::|}=*ENV; $^W=1}; print qq|ok\n|&#39;,<br/>+ stderr =&gt; 1,<br/>+ ),<br/>+ &quot;ok\n&quot;,<br/>+ &quot;[perl #128238] non-stashes in stashes&quot;;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47499.html Fri, 24 Jun 2016 04:57:54 +0000 [perl.git] branch blead, updated. v5.25.2-35-g10f94ef by James Keenan In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/10f94efda718d740901a1240ef33924a21edf4f5?hp=d3ac93550cd6be77e2bda672ab969e80dfda3463&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 10f94efda718d740901a1240ef33924a21edf4f5<br/>Author: Todd Rinaldo &lt;toddr@cpan.org&gt;<br/>Date: Wed Jun 22 19:58:29 2016 -0400<br/><br/> Sync CPAN Locale::Maketext 1.27 with blead<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> dist/Locale-Maketext/ChangeLog | 9 +++++++++<br/> 1 file changed, 9 insertions(+)<br/><br/>diff --git a/dist/Locale-Maketext/ChangeLog b/dist/Locale-Maketext/ChangeLog<br/>index 571871f..62f6b87 100644<br/>--- a/dist/Locale-Maketext/ChangeLog<br/>+++ b/dist/Locale-Maketext/ChangeLog<br/>@@ -1,5 +1,14 @@<br/> Revision history for Perl suite Locale::Maketext<br/> <br/>+2016-06-22<br/>+ * Release of 1.27 to CPAN<br/>+<br/>+2016-04-20<br/>+ * perl #127923: note priority between the white and blacklist<br/>+<br/>+2016-03-17<br/>+ * Add blacklist and whitelist support to Locale::Maketext.<br/>+<br/> 2014-06-17<br/> * Correct two subtle typos in Locale::Maketext POD.<br/> <br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47498.html Fri, 24 Jun 2016 00:34:38 +0000 [perl.git] branch blead, updated. v5.25.2-34-gd3ac935 by Father Chrysostomos In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/d3ac93550cd6be77e2bda672ab969e80dfda3463?hp=1b3df0e6584ada095ded632e22ae5b3a3f9b802d&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit d3ac93550cd6be77e2bda672ab969e80dfda3463<br/>Author: Father Chrysostomos &lt;sprout@cpan.org&gt;<br/>Date: Thu Jun 23 15:23:21 2016 -0700<br/><br/> Fix stupid test in 9uninit<br/> <br/> I was wondering why the warnings were being triggered backwards.<br/> Different output handles. Duh.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> t/lib/warnings/9uninit | 4 ++--<br/> 1 file changed, 2 insertions(+), 2 deletions(-)<br/><br/>diff --git a/t/lib/warnings/9uninit b/t/lib/warnings/9uninit<br/>index d2f9e3f..cf49c4b 100644<br/>--- a/t/lib/warnings/9uninit<br/>+++ b/t/lib/warnings/9uninit<br/>@@ -2167,7 +2167,7 @@ use warnings &#39;uninitialized&#39;;<br/> # aelem + const<br/> use constant foo =&gt; \0;<br/> $SIG{__WARN__} = sub {<br/>- print<br/>+ print STDERR<br/> $_[0] =~ /\$a\[([^]]+)]/ &amp;&amp; $1 == foo<br/> ? &quot;ok\n&quot;<br/> : (&quot;$1 != &quot;,0+foo,&quot;\n&quot;)<br/>@@ -2178,5 +2178,5 @@ undef $SIG{__WARN__};<br/> # Multideref<br/> () = &quot;$a[140688675223280]&quot;;<br/> EXPECT<br/>-Use of uninitialized value $a[140688675223280] in string at - line 15.<br/> ok<br/>+Use of uninitialized value $a[140688675223280] in string at - line 15.<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47497.html Thu, 23 Jun 2016 22:24:00 +0000 [perl.git] branch blead, updated. v5.25.2-33-g1b3df0e by Father Chrysostomos In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/1b3df0e6584ada095ded632e22ae5b3a3f9b802d?hp=9d0d7636ed8ab86b4764ee6b9a9091f2a92cf26d&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 1b3df0e6584ada095ded632e22ae5b3a3f9b802d<br/>Author: Father Chrysostomos &lt;sprout@cpan.org&gt;<br/>Date: Thu Jun 23 13:32:28 2016 -0700<br/><br/> Preserve 64-bit array offsets in uninit warnings<br/> <br/> This was brought up in ticket #128189.<br/> <br/> The main change is that Perl_varname now takes a SSize_t parameter<br/> instead of I32. I changed various other uses of I32 at the same<br/> time in case some code really does have an array with more than<br/> 2**31 entries (or whatever the exact number is).<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> embed.fnc | 4 ++--<br/> proto.h | 4 ++--<br/> sv.c | 12 ++++++------<br/> t/lib/warnings/9uninit | 21 +++++++++++++++++++++<br/> 4 files changed, 31 insertions(+), 10 deletions(-)<br/><br/>diff --git a/embed.fnc b/embed.fnc<br/>index d00f41b..cd4b0ff 100644<br/>--- a/embed.fnc<br/>+++ b/embed.fnc<br/>@@ -2440,7 +2440,7 @@ poM |void |sv_kill_backrefs |NN SV *const sv|NULLOK AV *const av<br/> #if defined(PERL_IN_SV_C) || defined (PERL_IN_OP_C)<br/> pR |SV * |varname |NULLOK const GV *const gv|const char gvtype \<br/> |PADOFFSET targ|NULLOK const SV *const keyname \<br/>- |I32 aindex|int subscript_type<br/>+ |SSize_t aindex|int subscript_type<br/> #endif<br/> <br/> pX |void |sv_del_backref |NN SV *const tsv|NN SV *const sv<br/>@@ -2801,7 +2801,7 @@ p |SV* |magic_scalarpack|NN HV *hv|NN MAGIC *mg<br/> #if defined(PERL_IN_SV_C)<br/> s |SV * |find_hash_subscript|NULLOK const HV *const hv \<br/> |NN const SV *const val<br/>-s |I32 |find_array_subscript|NULLOK const AV *const av \<br/>+s |SSize_t|find_array_subscript|NULLOK const AV *const av \<br/> |NN const SV *const val<br/> sMd |SV* |find_uninit_var|NULLOK const OP *const obase \<br/> |NULLOK const SV *const uninit_sv|bool match \<br/>diff --git a/proto.h b/proto.h<br/>index 86e9480..42d78cb 100644<br/>--- a/proto.h<br/>+++ b/proto.h<br/>@@ -5355,7 +5355,7 @@ STATIC I32 S_expect_number(pTHX_ char **const pattern)<br/> #define PERL_ARGS_ASSERT_EXPECT_NUMBER \<br/> assert(pattern)<br/> <br/>-STATIC I32 S_find_array_subscript(pTHX_ const AV *const av, const SV *const val);<br/>+STATIC SSize_t S_find_array_subscript(pTHX_ const AV *const av, const SV *const val);<br/> #define PERL_ARGS_ASSERT_FIND_ARRAY_SUBSCRIPT \<br/> assert(val)<br/> STATIC SV * S_find_hash_subscript(pTHX_ const HV *const hv, const SV *const val);<br/>@@ -5435,7 +5435,7 @@ STATIC void S_unreferenced_to_tmp_stack(pTHX_ AV *const unreferenced);<br/> # endif<br/> #endif<br/> #if defined(PERL_IN_SV_C) || defined (PERL_IN_OP_C)<br/>-PERL_CALLCONV SV * Perl_varname(pTHX_ const GV *const gv, const char gvtype, PADOFFSET targ, const SV *const keyname, I32 aindex, int subscript_type)<br/>+PERL_CALLCONV SV * Perl_varname(pTHX_ const GV *const gv, const char gvtype, PADOFFSET targ, const SV *const keyname, SSize_t aindex, int subscript_type)<br/> __attribute__warn_unused_result__;<br/> <br/> #endif<br/>diff --git a/sv.c b/sv.c<br/>index cbdb28e..2ceec5a 100644<br/>--- a/sv.c<br/>+++ b/sv.c<br/>@@ -15612,7 +15612,7 @@ S_find_hash_subscript(pTHX_ const HV *const hv, const SV *const val)<br/> /* Look for an entry in the array whose value has the same SV as val;<br/> * If so, return the index, otherwise return -1. */<br/> <br/>-STATIC I32<br/>+STATIC SSize_t<br/> S_find_array_subscript(pTHX_ const AV *const av, const SV *const val)<br/> {<br/> PERL_ARGS_ASSERT_FIND_ARRAY_SUBSCRIPT;<br/>@@ -15623,7 +15623,7 @@ S_find_array_subscript(pTHX_ const AV *const av, const SV *const val)<br/> <br/> if (val != &amp;PL_sv_undef) {<br/> SV ** const svp = AvARRAY(av);<br/>- I32 i;<br/>+ SSize_t i;<br/> <br/> for (i=AvFILLp(av); i&gt;=0; i--)<br/> if (svp[i] == val)<br/>@@ -15645,7 +15645,7 @@ S_find_array_subscript(pTHX_ const AV *const av, const SV *const val)<br/> <br/> SV*<br/> Perl_varname(pTHX_ const GV *const gv, const char gvtype, PADOFFSET targ,<br/>- const SV *const keyname, I32 aindex, int subscript_type)<br/>+ const SV *const keyname, SSize_t aindex, int subscript_type)<br/> {<br/> <br/> SV * const name = sv_newmortal();<br/>@@ -15758,7 +15758,7 @@ S_find_uninit_var(pTHX_ const OP *const obase, const SV *const uninit_sv,<br/> || (obase-&gt;op_type == OP_PADRANGE<br/> &amp;&amp; SvTYPE(PAD_SVl(obase-&gt;op_targ)) == SVt_PVHV)<br/> );<br/>- I32 index = 0;<br/>+ SSize_t index = 0;<br/> SV *keysv = NULL;<br/> int subscript_type = FUV_SUBSCRIPT_WITHIN;<br/> <br/>@@ -15944,7 +15944,7 @@ S_find_uninit_var(pTHX_ const OP *const obase, const SV *const uninit_sv,<br/> keysv, 0, FUV_SUBSCRIPT_HASH);<br/> }<br/> else {<br/>- const I32 index<br/>+ const SSize_t index<br/> = find_array_subscript((const AV *)sv, uninit_sv);<br/> if (index &gt;= 0)<br/> return varname(gv, &#39;@&#39;, o-&gt;op_targ,<br/>@@ -16140,7 +16140,7 @@ S_find_uninit_var(pTHX_ const OP *const obase, const SV *const uninit_sv,<br/> keysv, 0, FUV_SUBSCRIPT_HASH);<br/> }<br/> else {<br/>- const I32 index<br/>+ const SSize_t index<br/> = find_array_subscript((const AV *)sv, uninit_sv);<br/> if (index &gt;= 0)<br/> return varname(agg_gv, &#39;@&#39;, agg_targ,<br/>diff --git a/t/lib/warnings/9uninit b/t/lib/warnings/9uninit<br/>index 42915d9..d2f9e3f 100644<br/>--- a/t/lib/warnings/9uninit<br/>+++ b/t/lib/warnings/9uninit<br/>@@ -2159,3 +2159,24 @@ Use of uninitialized value $r in addition (+) at - line 6.<br/> Use of uninitialized value $t in subtraction (-) at - line 8.<br/> Use of uninitialized value $v in integer addition (+) at - line 11.<br/> Use of uninitialized value $x in integer subtraction (-) at - line 13.<br/>+########<br/>+# NAME 64-bit array subscripts<br/>+# SKIP ? eval { my $q = pack &quot;q&quot;, 0 }; $@<br/>+use warnings &#39;uninitialized&#39;;<br/>+<br/>+# aelem + const<br/>+use constant foo =&gt; \0;<br/>+$SIG{__WARN__} = sub {<br/>+ print<br/>+ $_[0] =~ /\$a\[([^]]+)]/ &amp;&amp; $1 == foo<br/>+ ? &quot;ok\n&quot;<br/>+ : (&quot;$1 != &quot;,0+foo,&quot;\n&quot;)<br/>+};<br/>+() = &quot;$a[foo]&quot;;<br/>+undef $SIG{__WARN__};<br/>+<br/>+# Multideref<br/>+() = &quot;$a[140688675223280]&quot;;<br/>+EXPECT<br/>+Use of uninitialized value $a[140688675223280] in string at - line 15.<br/>+ok<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47496.html Thu, 23 Jun 2016 20:44:42 +0000 [perl.git] branch blead, updated. v5.25.2-32-g9d0d763 by Craig A. Berry In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/9d0d7636ed8ab86b4764ee6b9a9091f2a92cf26d?hp=8bbcf42b3db0806c3a344687b8bfbc78af46ee4b&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 9d0d7636ed8ab86b4764ee6b9a9091f2a92cf26d<br/>Author: Craig A. Berry &lt;craigberry@mac.com&gt;<br/>Date: Mon Jun 20 21:10:47 2016 -0500<br/><br/> svpeek.t: $? is localized now.<br/> <br/> So it&#39;s no longer upgraded to PVLV on VMS like it would be if it<br/> had magic from COMPLEX_STATUS.<br/> <br/> This is a follow-up to b4514920cd5cabcc.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> ext/XS-APItest/t/svpeek.t | 8 ++------<br/> 1 file changed, 2 insertions(+), 6 deletions(-)<br/><br/>diff --git a/ext/XS-APItest/t/svpeek.t b/ext/XS-APItest/t/svpeek.t<br/>index 10fde7d..2e05669 100644<br/>--- a/ext/XS-APItest/t/svpeek.t<br/>+++ b/ext/XS-APItest/t/svpeek.t<br/>@@ -23,12 +23,8 @@ $| = 1;<br/> my $foo = &quot;$!&quot;;<br/> like (DPeek ($!), qr&#39;^PVMG\(&quot;&#39;, &#39;$!&#39;);<br/> <br/>-if ($^O eq &#39;VMS&#39;) {<br/>- local $?; # Reset anything Test::* has done to it.<br/>- # VMS defines COMPLEX_STATUS and upgrades $? to PVLV<br/>- is (DPeek ($?), &#39;PVLV()&#39;, &#39;$?&#39;);<br/>-} else {<br/>- local $?; # Reset anything Test::* has done to it.<br/>+{<br/>+ local $?; # Reset anything Test::* has done to it.<br/> is (DPeek ($?), &#39;PVMG()&#39;, &#39;$?&#39;);<br/> }<br/> is (DPeek ($|), &#39;PVMG(1)&#39;, &#39;$|&#39;);<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47495.html Thu, 23 Jun 2016 20:33:28 +0000 [perl.git] branch smoke-me/ap/tiehashomega, deleted.v5.25.2-26-g03a92b8 by Aristotle Pagaltzis In perl.git, the branch smoke-me/ap/tiehashomega has been deleted<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/0000000000000000000000000000000000000000?hp=03a92b88080eeb5464e010ec44461709044d344d&gt;<br/><br/> was 03a92b88080eeb5464e010ec44461709044d344d<br/><br/>-----------------------------------------------------------------------<br/>03a92b88080eeb5464e010ec44461709044d344d Module::CoreList: cut TieHashDelta out of everybody&acirc;&#128;&#153;s life<br/>-----------------------------------------------------------------------<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47494.html Thu, 23 Jun 2016 12:56:48 +0000 [perl.git] branch blead, updated. v5.25.2-31-g8bbcf42 by Aristotle Pagaltzis In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/8bbcf42b3db0806c3a344687b8bfbc78af46ee4b?hp=817597733b0e2fe71999d7d7998504fae8d7abbc&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 8bbcf42b3db0806c3a344687b8bfbc78af46ee4b<br/>Author: Aristotle Pagaltzis &lt;pagaltzis@gmx.de&gt;<br/>Date: Thu Jun 23 14:55:47 2016 +0200<br/><br/> Module::CoreList: cut TieHashDelta out of everybody&acirc;&#128;&#153;s life<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> dist/Module-CoreList/lib/Module/CoreList.pm | 31 +++++++++++++----------<br/> dist/Module-CoreList/lib/Module/CoreList/Utils.pm | 9 +------<br/> 2 files changed, 19 insertions(+), 21 deletions(-)<br/><br/>diff --git a/dist/Module-CoreList/lib/Module/CoreList.pm b/dist/Module-CoreList/lib/Module/CoreList.pm<br/>index d2eade2..a07f9c3 100644<br/>--- a/dist/Module-CoreList/lib/Module/CoreList.pm<br/>+++ b/dist/Module-CoreList/lib/Module/CoreList.pm<br/>@@ -2,10 +2,25 @@ package Module::CoreList;<br/> use strict;<br/> use vars qw/$VERSION %released %version %families %upstream<br/> %bug_tracker %deprecated %delta/;<br/>-use Module::CoreList::TieHashDelta;<br/> use version;<br/> $VERSION = &#39;5.20160720&#39;;<br/> <br/>+sub _undelta {<br/>+ my ($delta) = @_;<br/>+ my %expanded;<br/>+ for my $version (sort { $a cmp $b } keys %$delta) {<br/>+ my $data = $delta-&gt;{$version};<br/>+ my $from = $data-&gt;{delta_from};<br/>+ my %full = (<br/>+ ( $from ? %{$expanded{$from}} : () ),<br/>+ %{$data-&gt;{changed} || {}},<br/>+ );<br/>+ delete @full{ keys %{$data-&gt;{removed}} };<br/>+ $expanded{$version} = \%full;<br/>+ }<br/>+ return %expanded;<br/>+}<br/>+<br/> sub _released_order { # Sort helper, to make &#39;?&#39; sort after everything else<br/> (substr($released{$a}, 0, 1) eq &quot;?&quot;)<br/> ? ((substr($released{$b}, 0, 1) eq &quot;?&quot;)<br/>@@ -12768,12 +12783,7 @@ sub is_core<br/> return $perl_version &lt;= $final_release;<br/> }<br/> <br/>-for my $version (sort { $a &lt;=&gt; $b } keys %delta) {<br/>- my $data = $delta{$version};<br/>- tie %{$version{$version}}, &#39;Module::CoreList::TieHashDelta&#39;,<br/>- $data-&gt;{changed}, $data-&gt;{removed},<br/>- $data-&gt;{delta_from} ? $version{$data-&gt;{delta_from}} : undef;<br/>-}<br/>+%version = _undelta(\%delta);<br/> <br/> %deprecated = (<br/> 5.011 =&gt; {<br/>@@ -13397,12 +13407,7 @@ for my $version (sort { $a &lt;=&gt; $b } keys %delta) {<br/> },<br/> );<br/> <br/>-for my $version (sort { $a &lt;=&gt; $b } keys %deprecated) {<br/>- my $data = $deprecated{$version};<br/>- tie %{ $deprecated{$version} }, &#39;Module::CoreList::TieHashDelta&#39;,<br/>- $data-&gt;{changed}, $data-&gt;{removed},<br/>- $data-&gt;{delta_from} ? $deprecated{ $data-&gt;{delta_from} } : undef;<br/>-}<br/>+%deprecated = _undelta(\%deprecated);<br/> <br/> %upstream = (<br/> &#39;App::Cpan&#39; =&gt; &#39;cpan&#39;,<br/>diff --git a/dist/Module-CoreList/lib/Module/CoreList/Utils.pm b/dist/Module-CoreList/lib/Module/CoreList/Utils.pm<br/>index 43f7150..6044292 100644<br/>--- a/dist/Module-CoreList/lib/Module/CoreList/Utils.pm<br/>+++ b/dist/Module-CoreList/lib/Module/CoreList/Utils.pm<br/>@@ -4,7 +4,6 @@ use strict;<br/> use warnings;<br/> use vars qw[$VERSION %utilities];<br/> use Module::CoreList;<br/>-use Module::CoreList::TieHashDelta;<br/> <br/> $VERSION = &#39;5.20160720&#39;;<br/> <br/>@@ -1180,13 +1179,7 @@ my %delta = (<br/> },<br/> );<br/> <br/>-for my $version (sort { $a &lt;=&gt; $b } keys %delta) {<br/>- my $data = $delta{$version};<br/>-<br/>- tie %{$utilities{$version}}, &#39;Module::CoreList::TieHashDelta&#39;,<br/>- $data-&gt;{changed}, $data-&gt;{removed},<br/>- $data-&gt;{delta_from} ? $utilities{$data-&gt;{delta_from}} : undef;<br/>-}<br/>+%utilities = Module::CoreList::_undelta(\%delta);<br/> <br/> # Create aliases with trailing zeros for $] use<br/> <br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47493.html Thu, 23 Jun 2016 12:56:47 +0000 [perl.git] branch blead, updated. v5.25.2-30-g8175977 by Aristotle Pagaltzis In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/817597733b0e2fe71999d7d7998504fae8d7abbc?hp=3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 817597733b0e2fe71999d7d7998504fae8d7abbc<br/>Author: Aristotle Pagaltzis &lt;pagaltzis@gmx.de&gt;<br/>Date: Thu Jun 23 14:46:53 2016 +0200<br/><br/> Module::CoreList: prepare for better legibility of upcoming patch<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> dist/Module-CoreList/lib/Module/CoreList.pm | 2 --<br/> 1 file changed, 2 deletions(-)<br/><br/>diff --git a/dist/Module-CoreList/lib/Module/CoreList.pm b/dist/Module-CoreList/lib/Module/CoreList.pm<br/>index 72472d0..d2eade2 100644<br/>--- a/dist/Module-CoreList/lib/Module/CoreList.pm<br/>+++ b/dist/Module-CoreList/lib/Module/CoreList.pm<br/>@@ -12770,7 +12770,6 @@ sub is_core<br/> <br/> for my $version (sort { $a &lt;=&gt; $b } keys %delta) {<br/> my $data = $delta{$version};<br/>-<br/> tie %{$version{$version}}, &#39;Module::CoreList::TieHashDelta&#39;,<br/> $data-&gt;{changed}, $data-&gt;{removed},<br/> $data-&gt;{delta_from} ? $version{$data-&gt;{delta_from}} : undef;<br/>@@ -13400,7 +13399,6 @@ for my $version (sort { $a &lt;=&gt; $b } keys %delta) {<br/> <br/> for my $version (sort { $a &lt;=&gt; $b } keys %deprecated) {<br/> my $data = $deprecated{$version};<br/>-<br/> tie %{ $deprecated{$version} }, &#39;Module::CoreList::TieHashDelta&#39;,<br/> $data-&gt;{changed}, $data-&gt;{removed},<br/> $data-&gt;{delta_from} ? $deprecated{ $data-&gt;{delta_from} } : undef;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47492.html Thu, 23 Jun 2016 12:47:19 +0000 [perl.git] branch smoke-me/no_xhv_fill_2, deleted.v5.25.2-29-g3dfcef7 by Yves Orton In perl.git, the branch smoke-me/no_xhv_fill_2 has been deleted<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/0000000000000000000000000000000000000000?hp=3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236&gt;<br/><br/> was 3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236<br/><br/>-----------------------------------------------------------------------<br/>3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236 change manisort to produce a more intuitive order<br/>-----------------------------------------------------------------------<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47491.html Thu, 23 Jun 2016 10:21:43 +0000 [perl.git] branch smoke-me/no_xhv_fill, deleted.v5.25.2-26-g567c6c2 by Yves Orton In perl.git, the branch smoke-me/no_xhv_fill has been deleted<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/0000000000000000000000000000000000000000?hp=567c6c2f1697ee1c4d3250569733fc50a61f5c31&gt;<br/><br/> was 567c6c2f1697ee1c4d3250569733fc50a61f5c31<br/><br/>-----------------------------------------------------------------------<br/>567c6c2f1697ee1c4d3250569733fc50a61f5c31 refactor manifest logic<br/>-----------------------------------------------------------------------<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47490.html Thu, 23 Jun 2016 10:21:42 +0000 [perl.git] branch blead, updated. v5.25.2-29-g3dfcef7 by Yves Orton In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236?hp=a49fc7b3df0604607677e9aa70ac9c5468bbd742&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Tue Jun 21 09:07:48 2016 +0200<br/><br/> change manisort to produce a more intuitive order<br/> <br/> Dictionary sort order on filenames is very counter-intuitive, and<br/> produces surprising sort orders.<br/> <br/> What this patch does is sort things so that the following should<br/> always be true:<br/> <br/> 1. Case insensitive textual order<br/> Eg: Foo and foo and FOO should sort together in ascibetical order<br/> <br/> 2. Shorter dirs go before longer dirs with a common prefix<br/> Eg: lib/Foo/ should go before lib/Foo-Thing/<br/> <br/> 3. Base filename goes before dir of the same name<br/> Eg: lib/Foo.pm should sort before lib/Foo/Bar.pm<br/> <br/> This also refactors the MANIFEST sort code in Porting/manisort and<br/> Porting/pod_rules.pm files into Porting/pod_lib.pl<br/><br/>M MANIFEST<br/>M Porting/manisort<br/>M Porting/pod_lib.pl<br/>M Porting/pod_rules.pl<br/><br/>commit 8bf4c4010cc474d4000c2a8c78f6890fa5f1e577<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:51:38 2016 +0200<br/><br/> Change scalar(%hash) to be the same as 0+keys(%hash)<br/> <br/> This subject has a long history see [perl #114576] for more discussion.<br/> https://rt.perl.org/Public/Bug/Display.html?id=114576<br/> <br/> There are a variety of reasons we want to change the return signature of<br/> scalar(%hash). One is that it leaks implementation details about our<br/> associative array structure. Another is that it requires us to keep track<br/> of the used buckets in the hash, which we use for no other purpose but<br/> for scalar(%hash). Another is that it is just odd. Almost nothing needs to<br/> know these values. Perhaps debugging, but we have several much better<br/> functions for introspecting the internals of a hash.<br/> <br/> By changing the return signature we can remove all the logic related<br/> to maintaining and updating xhv_fill_lazy. This should make hot code<br/> paths a little faster, and maybe save some memory for traversed hashes.<br/> <br/> In order to provide some form of backwards compatibility we adds three<br/> new functions to the Hash::Util namespace: bucket_ratio(), num_buckets()<br/> and used_buckets(). These functions are actually implemented in<br/> universal.c, and thus always available even if Hash::Util is not loaded.<br/> This simplifies testing. At the same time Hash::Util contains backwards<br/> compatible code so that the new functions are available from it should<br/> they be needed in older perls.<br/> <br/> There are many tests in t/op/hash.t that are more or less obsolete after<br/> this patch as they test that xhv_fill_lazy is correctly set in various<br/> situations. However since we have a backwards compat layer we can just<br/> switch them to use bucket_ratio(%hash) instead of scalar(%hash) and keep<br/> the tests, just in case they are actually testing something not tested<br/> elsewhere.<br/><br/>M MANIFEST<br/>M dump.c<br/>M embed.fnc<br/>M embed.h<br/>M ext/Devel-Peek/t/Peek.t<br/>M ext/Hash-Util-FieldHash/t/05_perlhook.t<br/>M ext/Hash-Util/Changes<br/>M ext/Hash-Util/Util.xs<br/>M ext/Hash-Util/lib/Hash/Util.pm<br/>A ext/Hash-Util/t/builtin.t<br/>M hv.c<br/>M hv.h<br/>M pod/perldata.pod<br/>M pod/perldelta.pod<br/>M pod/perltie.pod<br/>M proto.h<br/>M sv.c<br/>M t/op/coreamp.t<br/>M t/op/each.t<br/>M t/op/hash.t<br/>M t/op/sub_lval.t<br/>M universal.c<br/><br/>commit 6c50b67b99a3df9486896d14dc294825a148a673<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:43:40 2016 +0200<br/><br/> Add a perldelta entry for recursive subpattern screwup in 5.24<br/><br/>M pod/perldelta.pod<br/><br/>commit 13e1fc6ad5f61be7a02b000114901d1d850e988f<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:43:11 2016 +0200<br/><br/> Add perldelta for POSIX memory leak fix<br/><br/>M pod/perldelta.pod<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> MANIFEST | 1249 ++++++++++++++++---------------<br/> Porting/manisort | 12 +-<br/> Porting/pod_lib.pl | 29 +<br/> Porting/pod_rules.pl | 17 +-<br/> dump.c | 11 +-<br/> embed.fnc | 1 +<br/> embed.h | 1 +<br/> ext/Devel-Peek/t/Peek.t | 34 +-<br/> ext/Hash-Util-FieldHash/t/05_perlhook.t | 4 +-<br/> ext/Hash-Util/Changes | 5 +<br/> ext/Hash-Util/Util.xs | 50 ++<br/> ext/Hash-Util/lib/Hash/Util.pm | 29 +-<br/> ext/Hash-Util/t/builtin.t | 38 +<br/> hv.c | 111 +--<br/> hv.h | 1 -<br/> pod/perldata.pod | 17 +-<br/> pod/perldelta.pod | 19 +<br/> pod/perltie.pod | 8 +-<br/> proto.h | 6 +<br/> sv.c | 1 -<br/> t/op/coreamp.t | 2 +-<br/> t/op/each.t | 42 +-<br/> t/op/hash.t | 15 +-<br/> t/op/sub_lval.t | 2 +-<br/> universal.c | 64 ++<br/> 25 files changed, 1001 insertions(+), 767 deletions(-)<br/> create mode 100644 ext/Hash-Util/t/builtin.t<br/><br/>diff --git a/MANIFEST b/MANIFEST<br/>index 25252df..027060e 100644<br/>--- a/MANIFEST<br/>+++ b/MANIFEST<br/>@@ -1,3 +1,4 @@<br/>+.dir-locals.el Emacs control file<br/> amigaos4/amigaio.c AmigaOS4 port<br/> amigaos4/amigaio.h AmigaOS4 port<br/> amigaos4/amigaos.c AmigaOS4 port<br/>@@ -20,12 +21,13 @@ configure.com Configure-equivalent for VMS<br/> configure.gnu Crude emulation of GNU configure<br/> cop.h Control operator header<br/> Copying The GNU General Public License<br/>+cpan/.dir-locals.el Emacs control file<br/> cpan/Archive-Tar/bin/ptar the ptar utility<br/> cpan/Archive-Tar/bin/ptardiff the ptardiff utility<br/> cpan/Archive-Tar/bin/ptargrep the ptardiff utility<br/>+cpan/Archive-Tar/lib/Archive/Tar.pm Archive::Tar<br/> cpan/Archive-Tar/lib/Archive/Tar/Constant.pm Archive::Tar<br/> cpan/Archive-Tar/lib/Archive/Tar/File.pm Archive::Tar<br/>-cpan/Archive-Tar/lib/Archive/Tar.pm Archive::Tar<br/> cpan/Archive-Tar/t/01_use.t Archive::Tar tests<br/> cpan/Archive-Tar/t/02_methods.t Archive::Tar tests<br/> cpan/Archive-Tar/t/03_file.t Archive::Tar tests<br/>@@ -47,10 +49,10 @@ cpan/Archive-Tar/t/src/short/b Archive::Tar tests<br/> cpan/Archive-Tar/t/src/short/bar.tar Archive::Tar tests<br/> cpan/Archive-Tar/t/src/short/foo.tbz Archive::Tar tests<br/> cpan/Archive-Tar/t/src/short/foo.tgz Archive::Tar tests<br/>+cpan/autodie/lib/autodie.pm Functions succeed or die with lexical scope<br/> cpan/autodie/lib/autodie/exception.pm Exception class for autodie<br/> cpan/autodie/lib/autodie/exception/system.pm Exception class for autodying system()<br/> cpan/autodie/lib/autodie/hints.pm Hinting interface for autodie<br/>-cpan/autodie/lib/autodie.pm Functions succeed or die with lexical scope<br/> cpan/autodie/lib/autodie/Scope/Guard.pm<br/> cpan/autodie/lib/autodie/Scope/GuardStack.pm<br/> cpan/autodie/lib/autodie/skip.pm<br/>@@ -58,8 +60,8 @@ cpan/autodie/lib/autodie/Util.pm<br/> cpan/autodie/lib/Fatal.pm Make errors in functions/builtins fatal<br/> cpan/autodie/t/00-load.t autodie - basic load<br/> cpan/autodie/t/args.t<br/>-cpan/autodie/t/autodie_skippy.pm<br/> cpan/autodie/t/autodie.t autodie - Basic functionality<br/>+cpan/autodie/t/autodie_skippy.pm<br/> cpan/autodie/t/autodie_test_module.pm autodie - test helper<br/> cpan/autodie/t/backcompat.t autodie - More Fatal backcompat<br/> cpan/autodie/t/basic_exceptions.t autodie - Basic exception tests<br/>@@ -68,8 +70,8 @@ cpan/autodie/t/blog_hints.t autodie - Tests fro PJF&#39;s blog<br/> cpan/autodie/t/caller.t autodie - Caller diagnostics<br/> cpan/autodie/t/chmod.t<br/> cpan/autodie/t/chown.t<br/>-cpan/autodie/t/context_lexical.t autodie - Context clobbering lexically<br/> cpan/autodie/t/context.t autodie - Context clobbering tests<br/>+cpan/autodie/t/context_lexical.t autodie - Context clobbering lexically<br/> cpan/autodie/t/core-trampoline-slurp.t<br/> cpan/autodie/t/crickey.t autodie - Like an Australian<br/> cpan/autodie/t/dbmopen.t autodie - dbm tests<br/>@@ -82,19 +84,19 @@ cpan/autodie/t/filehandles.t autodie - filehandle tests<br/> cpan/autodie/t/fileno.t autodie - fileno tests<br/> cpan/autodie/t/flock.t autodie - File locking tests<br/> cpan/autodie/t/format-clobber.t autodie - Don&#39;t clobber scalars<br/>+cpan/autodie/t/hints.t autodie - Test hints interface<br/> cpan/autodie/t/hints_insist.t autodie - Test hints insistance<br/> cpan/autodie/t/hints_pod_examples.t autodie - Test hints POD examples<br/> cpan/autodie/t/hints_provider_does.t autodie - Test hints/does roles<br/> cpan/autodie/t/hints_provider_easy_does_it.t autodie - Test easy hints/does<br/> cpan/autodie/t/hints_provider_isa.t autodie - Test hints/inheritance<br/>-cpan/autodie/t/hints.t autodie - Test hints interface<br/> cpan/autodie/t/import-into.t<br/>-cpan/autodie/t/internal-backcompat.t autodie - Back-compatibility tests<br/> cpan/autodie/t/internal.t autodie - internal interface tests<br/>+cpan/autodie/t/internal-backcompat.t autodie - Back-compatibility tests<br/> cpan/autodie/t/kill.t<br/> cpan/autodie/t/lethal.t autodie - lethal is the one true name<br/>-cpan/autodie/t/lib/autodie/test/au/exception.pm autodie - Australian helper<br/> cpan/autodie/t/lib/autodie/test/au.pm autodie - Australian helper<br/>+cpan/autodie/t/lib/autodie/test/au/exception.pm autodie - Australian helper<br/> cpan/autodie/t/lib/autodie/test/badname.pm autodie - Bad exception class<br/> cpan/autodie/t/lib/autodie/test/missing.pm autodie - Missing exception class<br/> cpan/autodie/t/lib/Caller_helper.pm autodie - Caller helper<br/>@@ -107,8 +109,8 @@ cpan/autodie/t/lib/lethal.pm autodie - with a better name<br/> cpan/autodie/t/lib/my/autodie.pm autodie - blog_hints.t helper<br/> cpan/autodie/t/lib/my/pragma.pm<br/> cpan/autodie/t/lib/OtherTypes.pm autodie - Format clobberer helper.<br/>-cpan/autodie/t/lib/pujHa/ghach/Dotlh.pm autodie - With Klingon honour<br/> cpan/autodie/t/lib/pujHa/ghach.pm autodie - Like a Klingon<br/>+cpan/autodie/t/lib/pujHa/ghach/Dotlh.pm autodie - With Klingon honour<br/> cpan/autodie/t/lib/Some/Module.pm autodie - blog_hints.t helper<br/> cpan/autodie/t/mkdir.t autodie - filesystem tests<br/> cpan/autodie/t/no_carp.t<br/>@@ -150,10 +152,10 @@ cpan/bignum/t/bigrat.t See if bigrat works<br/> cpan/bignum/t/bii_e_pi.t See if bigint exports e() and PI()<br/> cpan/bignum/t/biinfnan.t See if bignum works<br/> cpan/bignum/t/bir_e_pi.t See if bigrat exports e() and PI()<br/>-cpan/bignum/t/bninfnan.t See if bignum works<br/> cpan/bignum/t/bn_lite.t See if bignum with Math::BigInt::Lite works<br/>-cpan/bignum/t/brinfnan.t See if bignum works<br/>+cpan/bignum/t/bninfnan.t See if bignum works<br/> cpan/bignum/t/br_lite.t See if bigrat with Math::BigInt::Lite works<br/>+cpan/bignum/t/brinfnan.t See if bignum works<br/> cpan/bignum/t/in_effect.t See if in_effect() works<br/> cpan/bignum/t/infnan.inc See if bignum with inf/NaN works<br/> cpan/bignum/t/option_a.t See if bignum a =&gt; X works<br/>@@ -164,6 +166,7 @@ cpan/bignum/t/ratopt_a.t See if bigrat a =&gt; X works<br/> cpan/bignum/t/scope_f.t See if no bignum works<br/> cpan/bignum/t/scope_i.t See if no bigint works<br/> cpan/bignum/t/scope_r.t See if no bigrat works<br/>+cpan/Compress-Raw-Bzip2/Bzip2.xs<br/> cpan/Compress-Raw-Bzip2/bzip2-src/blocksort.c<br/> cpan/Compress-Raw-Bzip2/bzip2-src/bzlib.c<br/> cpan/Compress-Raw-Bzip2/bzip2-src/bzlib.h<br/>@@ -174,7 +177,6 @@ cpan/Compress-Raw-Bzip2/bzip2-src/decompress.c<br/> cpan/Compress-Raw-Bzip2/bzip2-src/huffman.c<br/> cpan/Compress-Raw-Bzip2/bzip2-src/LICENSE<br/> cpan/Compress-Raw-Bzip2/bzip2-src/randtable.c<br/>-cpan/Compress-Raw-Bzip2/Bzip2.xs<br/> cpan/Compress-Raw-Bzip2/fallback/constants.h<br/> cpan/Compress-Raw-Bzip2/fallback/constants.xs<br/> cpan/Compress-Raw-Bzip2/lib/Compress/Raw/Bzip2.pm<br/>@@ -201,6 +203,7 @@ cpan/Compress-Raw-Zlib/t/18lvalue.t Compress::Raw::Zlib<br/> cpan/Compress-Raw-Zlib/t/19nonpv.t<br/> cpan/Compress-Raw-Zlib/t/compress/CompTestUtils.pm<br/> cpan/Compress-Raw-Zlib/typemap Compress::Raw::Zlib<br/>+cpan/Compress-Raw-Zlib/Zlib.xs Compress::Raw::Zlib<br/> cpan/Compress-Raw-Zlib/zlib-src/adler32.c Compress::Raw::Zlib<br/> cpan/Compress-Raw-Zlib/zlib-src/compress.c Compress::Raw::Zlib<br/> cpan/Compress-Raw-Zlib/zlib-src/crc32.c Compress::Raw::Zlib<br/>@@ -222,25 +225,25 @@ cpan/Compress-Raw-Zlib/zlib-src/zconf.h Compress::Raw::Zlib<br/> cpan/Compress-Raw-Zlib/zlib-src/zlib.h Compress::Raw::Zlib<br/> cpan/Compress-Raw-Zlib/zlib-src/zutil.c Compress::Raw::Zlib<br/> cpan/Compress-Raw-Zlib/zlib-src/zutil.h Compress::Raw::Zlib<br/>-cpan/Compress-Raw-Zlib/Zlib.xs Compress::Raw::Zlib<br/> cpan/Config-Perl-V/t/10_base.t Config::Perl::V<br/> cpan/Config-Perl-V/t/20_plv56.t Config::Perl::V<br/> cpan/Config-Perl-V/t/21_plv58.t Config::Perl::V<br/> cpan/Config-Perl-V/t/22_plv510.t Config::Perl::V<br/> cpan/Config-Perl-V/t/23_plv512.t Config::Perl::V<br/> cpan/Config-Perl-V/t/24_plv514.t Config::Perl::V<br/>-cpan/Config-Perl-V/t/25_plv5162.t Config::Perl::V<br/> cpan/Config-Perl-V/t/25_plv516.t Config::Perl::V<br/>-cpan/Config-Perl-V/t/26_plv5182.t Config::Perl::V<br/>+cpan/Config-Perl-V/t/25_plv5162.t Config::Perl::V<br/> cpan/Config-Perl-V/t/26_plv518.t Config::Perl::V<br/>+cpan/Config-Perl-V/t/26_plv5182.t Config::Perl::V<br/> cpan/Config-Perl-V/t/27_plv5200.t Config::Perl::V<br/> cpan/Config-Perl-V/t/27_plv5202.t Config::Perl::V<br/>-cpan/Config-Perl-V/t/28_plv52201w.t Config::Perl::V<br/> cpan/Config-Perl-V/t/28_plv5220.t Config::Perl::V<br/>+cpan/Config-Perl-V/t/28_plv52201w.t Config::Perl::V<br/> cpan/Config-Perl-V/t/29_plv5235w.t Config::Perl::V<br/> cpan/Config-Perl-V/t/30_plv5240.t Config::Perl::V<br/> cpan/Config-Perl-V/V.pm Config::Perl::V<br/> cpan/CPAN/lib/App/Cpan.pm helper package for CPAN.pm<br/>+cpan/CPAN/lib/CPAN.pm Interface to Comprehensive Perl Archive Network<br/> cpan/CPAN/lib/CPAN/API/HOWTO.pod recipe book for programming with CPAN.pm<br/> cpan/CPAN/lib/CPAN/Author.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Bundle.pm helper package for CPAN.pm<br/>@@ -256,54 +259,56 @@ cpan/CPAN/lib/CPAN/Exception/RecursiveDependency.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Exception/yaml_not_installed.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Exception/yaml_process_error.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/FirstTime.pm Utility for creating CPAN config files<br/>-cpan/CPAN/lib/CPAN/FTP/netrc.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/FTP.pm helper package for CPAN.pm<br/>+cpan/CPAN/lib/CPAN/FTP/netrc.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/HandleConfig.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/HTTP/Client.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/HTTP/Credentials.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Index.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/InfoObj.pm helper package for CPAN.pm<br/>+cpan/CPAN/lib/CPAN/Kwalify.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Kwalify/distroprefs.dd helper file for validating config files<br/> cpan/CPAN/lib/CPAN/Kwalify/distroprefs.yml helper file for validating config files<br/>-cpan/CPAN/lib/CPAN/Kwalify.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/LWP/UserAgent.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Mirrors.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Module.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Nox.pm Runs CPAN while avoiding compiled extensions<br/> cpan/CPAN/lib/CPAN/Plugin.pm<br/> cpan/CPAN/lib/CPAN/Plugin/Specfile.pm<br/>-cpan/CPAN/lib/CPAN.pm Interface to Comprehensive Perl Archive Network<br/> cpan/CPAN/lib/CPAN/Prompt.pm<br/> cpan/CPAN/lib/CPAN/Queue.pm queueing system for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Shell.pm<br/> cpan/CPAN/lib/CPAN/Tarzip.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/URL.pm<br/> cpan/CPAN/lib/CPAN/Version.pm Simple math with different flavors of version strings<br/>+cpan/CPAN/PAUSE2003.pub CPAN public key<br/>+cpan/CPAN/PAUSE2005.pub CPAN public key<br/>+cpan/CPAN/PAUSE2007.pub CPAN public key<br/>+cpan/CPAN/PAUSE2009.pub CPAN public key<br/>+cpan/CPAN/PAUSE2011.pub<br/>+cpan/CPAN/scripts/cpan easily interact with CPAN from the command line<br/>+cpan/CPAN/t/01loadme.t See if CPAN the module works<br/>+cpan/CPAN/t/02nox.t See if CPAN::Nox works<br/>+cpan/CPAN/t/03pkgs.t See if CPAN::Version works<br/>+cpan/CPAN/t/10version.t See if CPAN the module works<br/>+cpan/CPAN/t/11mirroredby.t See if CPAN::Mirrored::By works<br/>+cpan/CPAN-Meta/lib/CPAN/Meta.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm<br/>+cpan/CPAN-Meta/lib/CPAN/Meta/History.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_0.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_1.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_2.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_3.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_4.pod<br/>-cpan/CPAN-Meta/lib/CPAN/Meta/History.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Merge.pm<br/>-cpan/CPAN-Meta/lib/CPAN/Meta.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm<br/>-cpan/CPAN-Meta-Requirements/lib/CPAN/Meta/Requirements.pm<br/>-cpan/CPAN-Meta-Requirements/t/accepts.t<br/>-cpan/CPAN-Meta-Requirements/t/bad_version_hook.t<br/>-cpan/CPAN-Meta-Requirements/t/basic.t<br/>-cpan/CPAN-Meta-Requirements/t/finalize.t<br/>-cpan/CPAN-Meta-Requirements/t/from-hash.t<br/>-cpan/CPAN-Meta-Requirements/t/merge.t<br/>-cpan/CPAN-Meta-Requirements/t/strings.t<br/>+cpan/CPAN-Meta/t/converter.t<br/> cpan/CPAN-Meta/t/converter-bad.t<br/> cpan/CPAN-Meta/t/converter-fail.t<br/> cpan/CPAN-Meta/t/converter-fragments.t<br/>-cpan/CPAN-Meta/t/converter.t<br/> cpan/CPAN-Meta/t/data-fail/META-1_0.yml<br/> cpan/CPAN-Meta/t/data-fail/META-1_1.yml<br/> cpan/CPAN-Meta/t/data-fail/META-1_2.yml<br/>@@ -358,12 +363,20 @@ cpan/CPAN-Meta/t/merge.t<br/> cpan/CPAN-Meta/t/meta-obj.t<br/> cpan/CPAN-Meta/t/no-index.t<br/> cpan/CPAN-Meta/t/optional_feature-merge.t<br/>+cpan/CPAN-Meta/t/prereqs.t<br/> cpan/CPAN-Meta/t/prereqs-finalize.t<br/> cpan/CPAN-Meta/t/prereqs-merge.t<br/>-cpan/CPAN-Meta/t/prereqs.t<br/> cpan/CPAN-Meta/t/repository.t<br/> cpan/CPAN-Meta/t/save-load.t<br/> cpan/CPAN-Meta/t/validator.t<br/>+cpan/CPAN-Meta-Requirements/lib/CPAN/Meta/Requirements.pm<br/>+cpan/CPAN-Meta-Requirements/t/accepts.t<br/>+cpan/CPAN-Meta-Requirements/t/bad_version_hook.t<br/>+cpan/CPAN-Meta-Requirements/t/basic.t<br/>+cpan/CPAN-Meta-Requirements/t/finalize.t<br/>+cpan/CPAN-Meta-Requirements/t/from-hash.t<br/>+cpan/CPAN-Meta-Requirements/t/merge.t<br/>+cpan/CPAN-Meta-Requirements/t/strings.t<br/> cpan/CPAN-Meta-YAML/lib/CPAN/Meta/YAML.pm CPAN-Meta-YAML files<br/> cpan/CPAN-Meta-YAML/t/01_api.t<br/> cpan/CPAN-Meta-YAML/t/01_compile.t CPAN-Meta-YAML files<br/>@@ -413,23 +426,12 @@ cpan/CPAN-Meta-YAML/t/tml-world/Spreadsheet-Read.tml<br/> cpan/CPAN-Meta-YAML/t/tml-world/Template-Provider-Unicode-Japanese.tml<br/> cpan/CPAN-Meta-YAML/t/tml-world/toolbar.tml<br/> cpan/CPAN-Meta-YAML/t/tml-world/Vanilla-Perl.tml<br/>-cpan/CPAN-Meta-YAML/t/tml-world/yaml_org.tml<br/> cpan/CPAN-Meta-YAML/t/tml-world/YAML-Tiny-META.tml<br/>-cpan/CPAN/PAUSE2003.pub CPAN public key<br/>-cpan/CPAN/PAUSE2005.pub CPAN public key<br/>-cpan/CPAN/PAUSE2007.pub CPAN public key<br/>-cpan/CPAN/PAUSE2009.pub CPAN public key<br/>-cpan/CPAN/PAUSE2011.pub<br/>-cpan/CPAN/scripts/cpan easily interact with CPAN from the command line<br/>-cpan/CPAN/t/01loadme.t See if CPAN the module works<br/>-cpan/CPAN/t/02nox.t See if CPAN::Nox works<br/>-cpan/CPAN/t/03pkgs.t See if CPAN::Version works<br/>-cpan/CPAN/t/10version.t See if CPAN the module works<br/>-cpan/CPAN/t/11mirroredby.t See if CPAN::Mirrored::By works<br/>+cpan/CPAN-Meta-YAML/t/tml-world/yaml_org.tml<br/> cpan/DB_File/config.in Part of Berkeley DB configuration<br/>-cpan/DB_File/DB_File_BS Berkeley DB extension mkbootstrap fodder<br/> cpan/DB_File/DB_File.pm Berkeley DB extension Perl module<br/> cpan/DB_File/DB_File.xs Berkeley DB extension external subroutines<br/>+cpan/DB_File/DB_File_BS Berkeley DB extension mkbootstrap fodder<br/> cpan/DB_File/dbinfo Berkeley DB database version checker<br/> cpan/DB_File/hints/dynixptx.pl Hint for DB_File for named architecture<br/> cpan/DB_File/hints/sco.pl Hint for DB_File for named architecture<br/>@@ -607,22 +609,22 @@ cpan/Devel-PPPort/parts/inc/mPUSH Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/MY_CXT Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/newCONSTSUB Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/newRV Devel::PPPort include<br/>-cpan/Devel-PPPort/parts/inc/newSVpv Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/newSV_type Devel::PPPort include<br/>+cpan/Devel-PPPort/parts/inc/newSVpv Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/podtest Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/ppphbin Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/ppphdoc Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/ppphtest Devel::PPPort include<br/>-cpan/Devel-PPPort/parts/inc/pvs Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/pv_tools Devel::PPPort include<br/>+cpan/Devel-PPPort/parts/inc/pvs Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/shared_pv Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/snprintf Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/sprintf Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/strlfuncs Devel::PPPort include<br/>-cpan/Devel-PPPort/parts/inc/SvPV Devel::PPPort include<br/>-cpan/Devel-PPPort/parts/inc/SvREFCNT Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/Sv_set Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/sv_xpvf Devel::PPPort include<br/>+cpan/Devel-PPPort/parts/inc/SvPV Devel::PPPort include<br/>+cpan/Devel-PPPort/parts/inc/SvREFCNT Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/threads Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/uv Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/variables Devel::PPPort include<br/>@@ -767,9 +769,9 @@ cpan/Devel-PPPort/parts/todo/5023007 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5023008 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5023009 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5024000 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/PPPort.xs Devel::PPPort dummy PPPort.xs<br/> cpan/Devel-PPPort/ppport_h.PL Devel::PPPort ppport.h writer<br/> cpan/Devel-PPPort/PPPort_pm.PL Devel::PPPort PPPort.pm writer<br/>-cpan/Devel-PPPort/PPPort.xs Devel::PPPort dummy PPPort.xs<br/> cpan/Devel-PPPort/PPPort_xs.PL Devel::PPPort RealPPPort.xs writer<br/> cpan/Devel-PPPort/soak Devel::PPPort Test Harness to run under various Perls<br/> cpan/Devel-PPPort/t/call.t Devel::PPPort test file<br/>@@ -787,29 +789,34 @@ cpan/Devel-PPPort/t/mPUSH.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/MY_CXT.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/newCONSTSUB.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/newRV.t Devel::PPPort test file<br/>-cpan/Devel-PPPort/t/newSVpv.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/newSV_type.t Devel::PPPort test file<br/>+cpan/Devel-PPPort/t/newSVpv.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/podtest.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/ppphtest.t Devel::PPPort test file<br/>-cpan/Devel-PPPort/t/pvs.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/pv_tools.t Devel::PPPort test file<br/>+cpan/Devel-PPPort/t/pvs.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/shared_pv.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/snprintf.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/sprintf.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/strlfuncs.t Devel::PPPort test file<br/>-cpan/Devel-PPPort/t/SvPV.t Devel::PPPort test file<br/>-cpan/Devel-PPPort/t/SvREFCNT.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/Sv_set.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/sv_xpvf.t Devel::PPPort test file<br/>+cpan/Devel-PPPort/t/SvPV.t Devel::PPPort test file<br/>+cpan/Devel-PPPort/t/SvREFCNT.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/testutil.pl Devel::PPPort test utilities<br/> cpan/Devel-PPPort/t/threads.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/uv.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/variables.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/warn.t Devel::PPPort test file<br/> cpan/Devel-PPPort/typemap Devel::PPPort Typemap<br/>+cpan/Digest/Digest.pm Digest extensions<br/> cpan/Digest/Digest/base.pm Digest extensions<br/> cpan/Digest/Digest/file.pm Digest extensions<br/>-cpan/Digest/Digest.pm Digest extensions<br/>+cpan/Digest/t/base.t See if Digest extensions work<br/>+cpan/Digest/t/digest.t See if Digest extensions work<br/>+cpan/Digest/t/file.t See if Digest extensions work<br/>+cpan/Digest/t/lib/Digest/Dummy.pm See if Digest extensions work<br/>+cpan/Digest/t/security.t See if Digest extensions work<br/> cpan/Digest-MD5/hints/dec_osf.pl Hints for named architecture<br/> cpan/Digest-MD5/hints/irix_6.pl Hints for named architecture<br/> cpan/Digest-MD5/hints/MacOS.pl Hints for named architecture<br/>@@ -827,21 +834,21 @@ cpan/Digest-MD5/t/utf8.t See if Digest::MD5 extension works<br/> cpan/Digest-MD5/typemap Digest::MD5 extension<br/> cpan/Digest-SHA/lib/Digest/SHA.pm Digest::SHA extension<br/> cpan/Digest-SHA/Makefile.PL Digest::SHA Makefile.PL<br/>-cpan/Digest-SHA/shasum shasum script<br/> cpan/Digest-SHA/SHA.xs Digest::SHA extension<br/>+cpan/Digest-SHA/shasum shasum script<br/> cpan/Digest-SHA/src/sdf.c Digest::SHA extension<br/>-cpan/Digest-SHA/src/sha64bit.c Digest::SHA extension<br/>-cpan/Digest-SHA/src/sha64bit.h Digest::SHA extension<br/> cpan/Digest-SHA/src/sha.c Digest::SHA extension<br/> cpan/Digest-SHA/src/sha.h Digest::SHA extension<br/>+cpan/Digest-SHA/src/sha64bit.c Digest::SHA extension<br/>+cpan/Digest-SHA/src/sha64bit.h Digest::SHA extension<br/> cpan/Digest-SHA/t/allfcns.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/base64.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/bitbuf.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/bitorder.t<br/> cpan/Digest-SHA/t/fips180-4.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/fips198.t See if Digest::SHA works<br/>-cpan/Digest-SHA/t/gglong.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/gg.t See if Digest::SHA works<br/>+cpan/Digest-SHA/t/gglong.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/hmacsha.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/inheritance.t<br/> cpan/Digest-SHA/t/ireland.t See if Digest::SHA works<br/>@@ -858,12 +865,6 @@ cpan/Digest-SHA/t/state.t See if Digest::SHA works<br/> cpan/Digest-SHA/t/unicode.t<br/> cpan/Digest-SHA/t/woodbury.t See if Digest::SHA works<br/> cpan/Digest-SHA/typemap Typemap for Digest::SHA<br/>-cpan/Digest/t/base.t See if Digest extensions work<br/>-cpan/Digest/t/digest.t See if Digest extensions work<br/>-cpan/Digest/t/file.t See if Digest extensions work<br/>-cpan/Digest/t/lib/Digest/Dummy.pm See if Digest extensions work<br/>-cpan/Digest/t/security.t See if Digest extensions work<br/>-cpan/.dir-locals.el Emacs control file<br/> cpan/Encode/bin/enc2xs Encode module generator<br/> cpan/Encode/bin/encguess guess character encodings of files<br/> cpan/Encode/bin/piconv iconv by perl<br/>@@ -878,15 +879,15 @@ cpan/Encode/CN/Makefile.PL Encode extension<br/> cpan/Encode/EBCDIC/EBCDIC.pm Encode extension<br/> cpan/Encode/EBCDIC/Makefile.PL Encode extension<br/> cpan/Encode/encengine.c Encode extension<br/>+cpan/Encode/Encode.pm Mother of all Encode extensions<br/>+cpan/Encode/Encode.xs Encode extension<br/>+cpan/Encode/Encode/_PM.e2x Skeleton file for enc2xs<br/>+cpan/Encode/Encode/_T.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/Changes.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/ConfigLocal_PM.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/encode.h Encode extension header file<br/> cpan/Encode/Encode/Makefile_PL.e2x Skeleton file for enc2xs<br/>-cpan/Encode/Encode.pm Mother of all Encode extensions<br/>-cpan/Encode/Encode/_PM.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/README.e2x Skeleton file for enc2xs<br/>-cpan/Encode/Encode/_T.e2x Skeleton file for enc2xs<br/>-cpan/Encode/Encode.xs Encode extension<br/> cpan/Encode/encoding.pm Perl Pragmatic Module<br/> cpan/Encode/JP/JP.pm Encode extension<br/> cpan/Encode/JP/Makefile.PL Encode extension<br/>@@ -903,8 +904,8 @@ cpan/Encode/lib/Encode/Guess.pm Encode Extension<br/> cpan/Encode/lib/Encode/JP/H2Z.pm Encode extension<br/> cpan/Encode/lib/Encode/JP/JIS7.pm Encode extension<br/> cpan/Encode/lib/Encode/KR/2022_KR.pm Encode extension<br/>-cpan/Encode/lib/Encode/MIME/Header/ISO_2022_JP.pm Encode extension<br/> cpan/Encode/lib/Encode/MIME/Header.pm Encode extension<br/>+cpan/Encode/lib/Encode/MIME/Header/ISO_2022_JP.pm Encode extension<br/> cpan/Encode/lib/Encode/MIME/Name.pm Encode extension<br/> cpan/Encode/lib/Encode/PerlIO.pod Documents for Encode &amp; PerlIO<br/> cpan/Encode/lib/Encode/Supported.pod Documents for supported encodings<br/>@@ -926,11 +927,11 @@ cpan/Encode/t/enc_data.t test script for utf8 DATA<br/> cpan/Encode/t/enc_eucjp.t test script<br/> cpan/Encode/t/enc_module.enc test data for t/enc_module.t<br/> cpan/Encode/t/enc_module.t test script<br/>-cpan/Encode/t/Encoder.t test script<br/>+cpan/Encode/t/enc_utf8.t test script<br/> cpan/Encode/t/Encode.t test script<br/>-cpan/Encode/t/encoding-locale.t test script<br/>+cpan/Encode/t/Encoder.t test script<br/> cpan/Encode/t/encoding.t test script<br/>-cpan/Encode/t/enc_utf8.t test script<br/>+cpan/Encode/t/encoding-locale.t test script<br/> cpan/Encode/t/fallback.t test script<br/> cpan/Encode/t/from_to.t test script<br/> cpan/Encode/t/gb2312.enc test data<br/>@@ -949,9 +950,9 @@ cpan/Encode/t/jisx0212.utf test data<br/> cpan/Encode/t/jperl.t test script<br/> cpan/Encode/t/ksc5601.enc test data<br/> cpan/Encode/t/ksc5601.utf test data<br/>-cpan/Encode/t/mime_header_iso2022jp.t test script<br/> cpan/Encode/t/mime-header.t test script<br/> cpan/Encode/t/mime-name.t test script<br/>+cpan/Encode/t/mime_header_iso2022jp.t test script<br/> cpan/Encode/t/Mod_EUCJP.pm module that t/enc_module.enc uses<br/> cpan/Encode/t/perlio.t test script<br/> cpan/Encode/t/piconv.t Test for piconv.t<br/>@@ -964,13 +965,13 @@ cpan/Encode/t/utf8strict.t test script<br/> cpan/Encode/t/utf8warnings.t<br/> cpan/Encode/TW/Makefile.PL Encode extension<br/> cpan/Encode/TW/TW.pm Encode extension<br/>+cpan/Encode/ucm/8859-1.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-10.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-11.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-13.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-14.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-15.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-16.ucm Unicode Character Map<br/>-cpan/Encode/ucm/8859-1.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-2.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-3.ucm Unicode Character Map<br/> cpan/Encode/ucm/8859-4.ucm Unicode Character Map<br/>@@ -1072,38 +1073,39 @@ cpan/Encode/Unicode/Unicode.pm Encode extension<br/> cpan/Encode/Unicode/Unicode.xs Encode extension<br/> cpan/experimental/lib/experimental.pm<br/> cpan/experimental/t/basic.t<br/>-cpan/ExtUtils-Constant/lib/ExtUtils/Constant/Base.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant.pm generate XS code to import C header constants<br/>+cpan/ExtUtils-Constant/lib/ExtUtils/Constant/Base.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant/ProxySubs.pm generate XS code for proxy constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant/Utils.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant/XS.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/t/Constant.t See if ExtUtils::Constant works<br/>-cpan/ExtUtils-Install/lib/ExtUtils/Installed.pm Information on installed extensions<br/> cpan/ExtUtils-Install/lib/ExtUtils/Install.pm Handles &#39;make install&#39; on extensions<br/>+cpan/ExtUtils-Install/lib/ExtUtils/Installed.pm Information on installed extensions<br/> cpan/ExtUtils-Install/lib/ExtUtils/Packlist.pm Manipulates .packlist files<br/> cpan/ExtUtils-Install/t/can_write_dir.t Does the _can_write_dir function of ExtUtils::Install work properly?<br/>+cpan/ExtUtils-Install/t/Install.t See if ExtUtils::Install works<br/> cpan/ExtUtils-Install/t/Installapi2.t See if new api for ExtUtils::Install::install() works<br/> cpan/ExtUtils-Install/t/Installed.t See if ExtUtils::Installed works<br/>-cpan/ExtUtils-Install/t/Install.t See if ExtUtils::Install works<br/> cpan/ExtUtils-Install/t/InstallWithMM.t See if ExtUtils::Install works (related to EUMM/t/basic.t)<br/> cpan/ExtUtils-Install/t/lib/MakeMaker/Test/Setup/BFD.pm MakeMaker test utilities<br/> cpan/ExtUtils-Install/t/lib/MakeMaker/Test/Utils.pm MakeMaker test utilities<br/> cpan/ExtUtils-Install/t/lib/TieOut.pm Testing library to capture prints<br/> cpan/ExtUtils-Install/t/Packlist.t See if Packlist works<br/> cpan/ExtUtils-MakeMaker/bin/instmodsh Give information about installed extensions<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm Calling MM functions from the cmd line<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm Does the real work of the above<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm Calling MM functions from the cmd line<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm Locates libraries<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm Does the real work of the above<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm Write Makefiles for extensions<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm MakeMaker wrapper for Config<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod MakeMaker FAQ<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm Write Makefiles for extensions<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod Writing a module with MakeMaker<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm Writes a bootstrap file (see MakeMaker)<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm Writes a linker options file for extensions<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm MakeMaker adaptor class<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm MakeMaker methods for AIX<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm MakeMaker methods for Any OS<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm MakeMaker methods for BeOS<br/>@@ -1113,7 +1115,6 @@ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm MakeMaker methods for DOS<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm MakeMaker methods for MacOS<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm MakeMaker methods for NetWare<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm MakeMaker methods for OS/2<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm MakeMaker adaptor class<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm MakeMaker methods for QNX<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm MakeMaker methods for Unix<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm MakeMaker methods for U/WIN<br/>@@ -1138,32 +1139,32 @@ cpan/ExtUtils-MakeMaker/t/dir_target.t Verify if dir_target() is supported<br/> cpan/ExtUtils-MakeMaker/t/echo.t Test for ExtUtils::MakeMaker<br/> cpan/ExtUtils-MakeMaker/t/eu_command.t<br/> cpan/ExtUtils-MakeMaker/t/FIRST_MAKEFILE.t See if FIRST_MAKEFILE works<br/>-cpan/ExtUtils-MakeMaker/t/fixin.t See if ExtUtils::MakeMaker works<br/> cpan/ExtUtils-MakeMaker/t/fix_libs.t Test for ExtUtils::MakeMaker<br/>+cpan/ExtUtils-MakeMaker/t/fixin.t See if ExtUtils::MakeMaker works<br/> cpan/ExtUtils-MakeMaker/t/hints.t See if hint files are honored.<br/>+cpan/ExtUtils-MakeMaker/t/INST.t Check MakeMaker INST_* macros<br/>+cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t See if MakeMaker can apply PREFIXs<br/> cpan/ExtUtils-MakeMaker/t/INSTALL_BASE.t Test INSTALL_BASE in MakeMaker<br/> cpan/ExtUtils-MakeMaker/t/installed_file.t Test for ExtUtils::MakeMaker<br/>-cpan/ExtUtils-MakeMaker/t/INST_PREFIX.t See if MakeMaker can apply PREFIXs<br/>-cpan/ExtUtils-MakeMaker/t/INST.t Check MakeMaker INST_* macros<br/> cpan/ExtUtils-MakeMaker/t/is_of_type.t Test for ExtUtils::MakeMaker<br/>-cpan/ExtUtils-MakeMaker/t/Liblist.t See if ExtUtils::Liblist works<br/> cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/NoXS.pm MakeMaker test utilities<br/> cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/BFD.pm MakeMaker test utilities<br/> cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Setup/XS.pm MakeMaker test utilities<br/> cpan/ExtUtils-MakeMaker/t/lib/MakeMaker/Test/Utils.pm MakeMaker test utilities<br/> cpan/ExtUtils-MakeMaker/t/lib/TieIn.pm Testing library for dummy input handles<br/> cpan/ExtUtils-MakeMaker/t/lib/TieOut.pm Testing library to capture prints<br/>-cpan/ExtUtils-MakeMaker/t/MakeMaker_Parameters.t test &quot;MakeMaker Parameters&quot; section<br/>+cpan/ExtUtils-MakeMaker/t/Liblist.t See if ExtUtils::Liblist works<br/> cpan/ExtUtils-MakeMaker/t/make.t See if make detection works<br/>+cpan/ExtUtils-MakeMaker/t/MakeMaker_Parameters.t test &quot;MakeMaker Parameters&quot; section<br/> cpan/ExtUtils-MakeMaker/t/maketext_filter.t See if maketext_filter works<br/> cpan/ExtUtils-MakeMaker/t/meta_convert.t See if MakeMaker works<br/>-cpan/ExtUtils-MakeMaker/t/metafile_data.t See if META.yml handling works<br/>-cpan/ExtUtils-MakeMaker/t/metafile_file.t See if META.yml handling works<br/> cpan/ExtUtils-MakeMaker/t/META_for_testing.json test data for MakeMaker<br/>-cpan/ExtUtils-MakeMaker/t/META_for_testing_tricky_version.yml test data for MakeMaker<br/> cpan/ExtUtils-MakeMaker/t/META_for_testing.yml test data for MakeMaker<br/>-cpan/ExtUtils-MakeMaker/t/miniperl.t Test MakeMaker with miniperl<br/>+cpan/ExtUtils-MakeMaker/t/META_for_testing_tricky_version.yml test data for MakeMaker<br/>+cpan/ExtUtils-MakeMaker/t/metafile_data.t See if META.yml handling works<br/>+cpan/ExtUtils-MakeMaker/t/metafile_file.t See if META.yml handling works<br/> cpan/ExtUtils-MakeMaker/t/min_perl_version.t Test the MIN_PERL_VERSION argument to WriteMakefile.<br/>+cpan/ExtUtils-MakeMaker/t/miniperl.t Test MakeMaker with miniperl<br/> cpan/ExtUtils-MakeMaker/t/Mkbootstrap.t See if ExtUtils::Mkbootstrap works<br/> cpan/ExtUtils-MakeMaker/t/MM_Any.t See if ExtUtils::MM_Any works<br/> cpan/ExtUtils-MakeMaker/t/MM_BeOS.t See if ExtUtils::MM_BeOS works<br/>@@ -1182,8 +1183,8 @@ cpan/ExtUtils-MakeMaker/t/pm_to_blib.t Test for ExtUtils::MakeMaker<br/> cpan/ExtUtils-MakeMaker/t/pod2man.t See if MakeMaker can handle no pod2man<br/> cpan/ExtUtils-MakeMaker/t/postamble.t See if postamble works<br/> cpan/ExtUtils-MakeMaker/t/prefixify.t See if MakeMaker can apply a PREFIX<br/>-cpan/ExtUtils-MakeMaker/t/prereq_print.t See if PREREQ_PRINT works<br/> cpan/ExtUtils-MakeMaker/t/prereq.t See if MakeMaker works<br/>+cpan/ExtUtils-MakeMaker/t/prereq_print.t See if PREREQ_PRINT works<br/> cpan/ExtUtils-MakeMaker/t/problems.t How MakeMaker reacts to build problems<br/> cpan/ExtUtils-MakeMaker/t/prompt.t See if E::MM::prompt() works<br/> cpan/ExtUtils-MakeMaker/t/recurs.t See if recursive builds work<br/>@@ -1207,8 +1208,8 @@ cpan/File-Fetch/t/01_File-Fetch.t File::Fetch tests<br/> cpan/File-Fetch/t/null_subclass.t<br/> cpan/File-Path/lib/File/Path.pm Do things like &#39;mkdir -p&#39; and &#39;rm -r&#39;<br/> cpan/File-Path/t/FilePathTest.pm See if File::Path works<br/>-cpan/File-Path/t/Path_root.t See if File::Path works<br/> cpan/File-Path/t/Path.t See if File::Path works<br/>+cpan/File-Path/t/Path_root.t See if File::Path works<br/> cpan/File-Path/t/Path_win32.t See if File::Path works<br/> cpan/File-Path/t/taint.t See if File::Path works with -T<br/> cpan/File-Temp/lib/File/Temp.pm create safe temporary files and file handles<br/>@@ -1338,16 +1339,16 @@ cpan/IO-Compress/lib/File/GlobMapper.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm IO::Compress<br/>-cpan/IO-Compress/lib/IO/Compress/Base/Common.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Base.pm IO::Compress<br/>+cpan/IO-Compress/lib/IO/Compress/Base/Common.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Bzip2.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Deflate.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/FAQ.pod IO::Compress<br/>-cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Gzip.pm IO::Compress<br/>+cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm IO::Compress<br/>-cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Zip.pm IO::Compress<br/>+cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm IO::Compress<br/>@@ -1407,13 +1408,13 @@ cpan/IO-Compress/t/104destroy-rawdeflate.t IO::Compress<br/> cpan/IO-Compress/t/104destroy-zip.t IO::Compress<br/> cpan/IO-Compress/t/105oneshot-bzip2.t IO::Compress<br/> cpan/IO-Compress/t/105oneshot-deflate.t IO::Compress<br/>-cpan/IO-Compress/t/105oneshot-gzip-only.t IO::Compress<br/> cpan/IO-Compress/t/105oneshot-gzip.t IO::Compress<br/>+cpan/IO-Compress/t/105oneshot-gzip-only.t IO::Compress<br/> cpan/IO-Compress/t/105oneshot-rawdeflate.t IO::Compress<br/>+cpan/IO-Compress/t/105oneshot-zip.t IO::Compress<br/> cpan/IO-Compress/t/105oneshot-zip-bzip2-only.t IO::Compress<br/> cpan/IO-Compress/t/105oneshot-zip-only.t IO::Compress<br/> cpan/IO-Compress/t/105oneshot-zip-store-only.t IO::Compress<br/>-cpan/IO-Compress/t/105oneshot-zip.t IO::Compress<br/> cpan/IO-Compress/t/106prime-bzip2.t IO::Compress<br/> cpan/IO-Compress/t/106prime-deflate.t IO::Compress<br/> cpan/IO-Compress/t/106prime-gzip.t IO::Compress<br/>@@ -1513,14 +1514,14 @@ cpan/IPC-SysV/regen.pl IPC::SysV file regeneration script<br/> cpan/IPC-SysV/SysV.xs IPC::SysV extension Perl module<br/> cpan/IPC-SysV/t/ipcsysv.t IPC::SysV test file<br/> cpan/IPC-SysV/t/msg.t IPC::SysV test file<br/>-cpan/IPC-SysV/t/podcov.t IPC::SysV test file<br/> cpan/IPC-SysV/t/pod.t IPC::SysV test file<br/>+cpan/IPC-SysV/t/podcov.t IPC::SysV test file<br/> cpan/IPC-SysV/t/sem.t IPC::SysV test file<br/> cpan/IPC-SysV/t/shm.t IPC::SysV test file<br/> cpan/IPC-SysV/typemap IPC::SysV typemap<br/> cpan/JSON-PP/bin/json_pp<br/>-cpan/JSON-PP/lib/JSON/PP/Boolean.pm<br/> cpan/JSON-PP/lib/JSON/PP.pm<br/>+cpan/JSON-PP/lib/JSON/PP/Boolean.pm<br/> cpan/JSON-PP/t/000_load.t<br/> cpan/JSON-PP/t/001_utf8.t<br/> cpan/JSON-PP/t/002_error.t<br/>@@ -1560,12 +1561,12 @@ cpan/JSON-PP/t/zero-mojibake.t<br/> cpan/libnet/lib/Net/Cmd.pm<br/> cpan/libnet/lib/Net/Config.pm<br/> cpan/libnet/lib/Net/Domain.pm<br/>+cpan/libnet/lib/Net/FTP.pm<br/> cpan/libnet/lib/Net/FTP/A.pm<br/> cpan/libnet/lib/Net/FTP/dataconn.pm<br/> cpan/libnet/lib/Net/FTP/E.pm<br/> cpan/libnet/lib/Net/FTP/I.pm<br/> cpan/libnet/lib/Net/FTP/L.pm<br/>-cpan/libnet/lib/Net/FTP.pm<br/> cpan/libnet/lib/Net/libnetFAQ.pod<br/> cpan/libnet/lib/Net/Netrc.pm<br/> cpan/libnet/lib/Net/NNTP.pm<br/>@@ -1579,48 +1580,48 @@ cpan/libnet/t/ftp.t libnet<br/> cpan/libnet/t/hostname.t libnet<br/> cpan/libnet/t/libnet_t.pl libnet<br/> cpan/libnet/t/netrc.t libnet<br/>+cpan/libnet/t/nntp.t libnet<br/> cpan/libnet/t/nntp_ipv6.t<br/> cpan/libnet/t/nntp_ssl.t<br/>-cpan/libnet/t/nntp.t libnet<br/> cpan/libnet/t/pop3_ipv6.t<br/> cpan/libnet/t/pop3_ssl.t<br/> cpan/libnet/t/require.t libnet<br/>+cpan/libnet/t/smtp.t libnet<br/> cpan/libnet/t/smtp_ipv6.t<br/> cpan/libnet/t/smtp_ssl.t<br/>-cpan/libnet/t/smtp.t libnet<br/> cpan/libnet/t/time.t libnet<br/>+cpan/Locale-Codes/lib/Locale/Codes.pm Locale::Codes<br/>+cpan/Locale-Codes/lib/Locale/Codes.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Codes/API.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Codes/Changes.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Codes/Constants.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes/Country_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Country.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Country.pod Locale::Codes documentation<br/>+cpan/Locale-Codes/lib/Locale/Codes/Country_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Country_Retired.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes/Currency_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Currency.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Currency.pod Locale::Codes documentation<br/>+cpan/Locale-Codes/lib/Locale/Codes/Currency_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Currency_Retired.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes/LangExt_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangExt.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangExt.pod Locale::Codes documentation<br/>+cpan/Locale-Codes/lib/Locale/Codes/LangExt_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangExt_Retired.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes/LangFam_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangFam.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangFam.pod Locale::Codes<br/>+cpan/Locale-Codes/lib/Locale/Codes/LangFam_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangFam_Retired.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes/Language_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Language.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Language.pod Locale::Codes documentation<br/>+cpan/Locale-Codes/lib/Locale/Codes/Language_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Language_Retired.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes/LangVar_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangVar.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangVar.pod Locale::Codes documentation<br/>+cpan/Locale-Codes/lib/Locale/Codes/LangVar_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/LangVar_Retired.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes.pod Locale::Codes documentation<br/>-cpan/Locale-Codes/lib/Locale/Codes/Script_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Script.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Script.pod Locale::Codes documentation<br/>+cpan/Locale-Codes/lib/Locale/Codes/Script_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Script_Retired.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Country.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Country.pod Locale::Codes documentation<br/>@@ -1630,25 +1631,25 @@ cpan/Locale-Codes/lib/Locale/Language.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Language.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Script.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Script.pod Locale::Codes documentation<br/>-cpan/Locale-Codes/t/country_old.t Locale::Codes tests<br/> cpan/Locale-Codes/t/country.t Locale::Codes tests<br/>-cpan/Locale-Codes/t/currency_old.t<br/>+cpan/Locale-Codes/t/country_old.t Locale::Codes tests<br/> cpan/Locale-Codes/t/currency.t<br/>+cpan/Locale-Codes/t/currency_old.t<br/> cpan/Locale-Codes/t/langext.t<br/> cpan/Locale-Codes/t/langfam.t<br/>-cpan/Locale-Codes/t/language_old.t Locale::Codes tests<br/> cpan/Locale-Codes/t/language.t Locale::Codes tests<br/>+cpan/Locale-Codes/t/language_old.t Locale::Codes tests<br/> cpan/Locale-Codes/t/langvar.t<br/>-cpan/Locale-Codes/t/script_old.t<br/> cpan/Locale-Codes/t/script.t<br/>+cpan/Locale-Codes/t/script_old.t<br/> cpan/Locale-Codes/t/testfunc.pl Locale::Codes tests<br/>+cpan/Locale-Codes/t/vals.pl<br/> cpan/Locale-Codes/t/vals_country.pl<br/> cpan/Locale-Codes/t/vals_currency.pl<br/> cpan/Locale-Codes/t/vals_langext.pl<br/> cpan/Locale-Codes/t/vals_langfam.pl<br/> cpan/Locale-Codes/t/vals_language.pl<br/> cpan/Locale-Codes/t/vals_langvar.pl<br/>-cpan/Locale-Codes/t/vals.pl<br/> cpan/Locale-Codes/t/vals_script.pl<br/> cpan/Locale-Maketext-Simple/lib/Locale/Maketext/Simple.pm Locale::Simple<br/> cpan/Locale-Maketext-Simple/t/0-signature.t Locale::Simple tests<br/>@@ -1660,20 +1661,16 @@ cpan/Locale-Maketext-Simple/t/po_with_i_default/fr.po Locale::Simple tests<br/> cpan/Locale-Maketext-Simple/t/po_with_i_default/i_default.po Locale::Simple tests<br/> cpan/Locale-Maketext-Simple/t/po_without_i_default/en.po Locale::Simple tests<br/> cpan/Locale-Maketext-Simple/t/po_without_i_default/fr.po Locale::Simple tests<br/>-cpan/Math-BigInt-FastCalc/FastCalc.xs Math::BigInt::FastCalc extension<br/>-cpan/Math-BigInt-FastCalc/lib/Math/BigInt/FastCalc.pm Math::BigInt::FastCalc extension<br/>-cpan/Math-BigInt-FastCalc/t/bigintfc.t Math::BigInt::FastCalc extension<br/>-cpan/Math-BigInt-FastCalc/t/bootstrap.t Math::BigInt::FastCalc extension<br/>-cpan/Math-BigInt-FastCalc/t/leak.t test for memory leaks in Math::BigInt::FastCalc<br/>-cpan/Math-BigInt-FastCalc/t/mbi_rand.t Math::BigInt::FastCalc extension<br/> cpan/Math-BigInt/lib/Math/BigFloat.pm An arbitrary precision floating-point arithmetic package<br/>-cpan/Math-BigInt/lib/Math/BigInt/CalcEmu.pm Pure Perl module to support Math::BigInt<br/>-cpan/Math-BigInt/lib/Math/BigInt/Calc.pm Pure Perl module to support Math::BigInt<br/> cpan/Math-BigInt/lib/Math/BigInt.pm An arbitrary precision integer arithmetic package<br/>+cpan/Math-BigInt/lib/Math/BigInt/Calc.pm Pure Perl module to support Math::BigInt<br/>+cpan/Math-BigInt/lib/Math/BigInt/CalcEmu.pm Pure Perl module to support Math::BigInt<br/>+cpan/Math-BigInt/t/_e_math.t Helper routine in BigFloat for _e math<br/> cpan/Math-BigInt/t/alias.inc Support for BigInt tests<br/> cpan/Math-BigInt/t/bare_mbf.t Test MBF under Math::BigInt::BareCalc<br/> cpan/Math-BigInt/t/bare_mbi.t Test MBI under Math::BigInt::BareCalc<br/> cpan/Math-BigInt/t/bare_mif.t Rounding tests under BareCalc<br/>+cpan/Math-BigInt/t/big_pi_e.t test bpi() and bexp()<br/> cpan/Math-BigInt/t/bigfltpm.inc Shared tests for bigfltpm.t and sub_mbf.t<br/> cpan/Math-BigInt/t/bigfltpm.t See if BigFloat.pm works<br/> cpan/Math-BigInt/t/bigintc.t See if BigInt/Calc.pm works<br/>@@ -1681,14 +1678,12 @@ cpan/Math-BigInt/t/bigintpm.inc Shared tests for bigintpm.t and sub_mbi.t<br/> cpan/Math-BigInt/t/bigintpm.t See if BigInt.pm works<br/> cpan/Math-BigInt/t/bigints.t See if BigInt.pm works<br/> cpan/Math-BigInt/t/biglog.t Test the log function<br/>-cpan/Math-BigInt/t/big_pi_e.t test bpi() and bexp()<br/> cpan/Math-BigInt/t/bigroot.t Test the broot function<br/> cpan/Math-BigInt/t/calling.t Test calling conventions<br/> cpan/Math-BigInt/t/config.t Test Math::BigInt-&gt;config()<br/>-cpan/Math-BigInt/t/constant.t Test Math::BigInt/BigFloat under :constant<br/> cpan/Math-BigInt/t/const_mbf.t Test Math::BigInt<br/>+cpan/Math-BigInt/t/constant.t Test Math::BigInt/BigFloat under :constant<br/> cpan/Math-BigInt/t/downgrade.t Test if use Math::BigInt(); under downgrade works<br/>-cpan/Math-BigInt/t/_e_math.t Helper routine in BigFloat for _e math<br/> cpan/Math-BigInt/t/from_hex-mbf.t Test Math::BigInt<br/> cpan/Math-BigInt/t/inf_nan.t Special tests for inf and *NaN* handling<br/> cpan/Math-BigInt/t/isa.t Test for Math::BigInt inheritance<br/>@@ -1699,9 +1694,9 @@ cpan/Math-BigInt/t/Math/BigInt/Scalar.pm Pure Perl module to support Math::BigIn<br/> cpan/Math-BigInt/t/Math/BigInt/Subclass.pm Empty subclass of BigInt for test<br/> cpan/Math-BigInt/t/mbf_ali.t Tests for BigFloat<br/> cpan/Math-BigInt/t/mbi_ali.t Tests for BigInt<br/>+cpan/Math-BigInt/t/mbi_rand.t Test Math::BigInt randomly<br/> cpan/Math-BigInt/t/mbimbf.inc Actual BigInt/BigFloat accuracy, precision and fallback, round_mode tests<br/> cpan/Math-BigInt/t/mbimbf.t BigInt/BigFloat accuracy, precision and fallback, round_mode<br/>-cpan/Math-BigInt/t/mbi_rand.t Test Math::BigInt randomly<br/> cpan/Math-BigInt/t/nan_cmp.t overloaded comparison involving *NaN*<br/> cpan/Math-BigInt/t/new_overloaded.t test overloaded numbers in BigFloat&#39;s new()<br/> cpan/Math-BigInt/t/objectify_mbf.t Math::BigInt tests<br/>@@ -1720,25 +1715,31 @@ cpan/Math-BigInt/t/sub_mbf.t Empty subclass test of BigFloat<br/> cpan/Math-BigInt/t/sub_mbi.t Empty subclass test of BigInt<br/> cpan/Math-BigInt/t/sub_mif.t Test A &amp; P with subclasses using mbimbf.inc<br/> cpan/Math-BigInt/t/trap.t Test whether trap_nan and trap_inf work<br/>-cpan/Math-BigInt/t/upgrade2.t Test that two upgrade levels work<br/>-cpan/Math-BigInt/t/upgradef.t Test if use Math::BigFloat(); under upgrade works<br/> cpan/Math-BigInt/t/upgrade.inc Actual tests for upgrade.t<br/> cpan/Math-BigInt/t/upgrade.t Test if use Math::BigInt(); under upgrade works<br/>+cpan/Math-BigInt/t/upgrade2.t Test that two upgrade levels work<br/>+cpan/Math-BigInt/t/upgradef.t Test if use Math::BigFloat(); under upgrade works<br/>+cpan/Math-BigInt/t/use.t Test if use Math::BigInt(); works<br/> cpan/Math-BigInt/t/use_lib1.t Test combinations of Math::BigInt and BigFloat<br/> cpan/Math-BigInt/t/use_lib2.t Test combinations of Math::BigInt and BigFloat<br/> cpan/Math-BigInt/t/use_lib3.t Test combinations of Math::BigInt and BigFloat<br/> cpan/Math-BigInt/t/use_lib4.t Test combinations of Math::BigInt and BigFloat<br/> cpan/Math-BigInt/t/use_mbfw.t use BigFloat w/ with and lib at the same time<br/>-cpan/Math-BigInt/t/use.t Test if use Math::BigInt(); works<br/> cpan/Math-BigInt/t/with_sub.t Test use Math::BigFloat with =&gt; package<br/>-cpan/Math-BigRat/lib/Math/BigRat.pm Math::BigRat<br/>+cpan/Math-BigInt-FastCalc/FastCalc.xs Math::BigInt::FastCalc extension<br/>+cpan/Math-BigInt-FastCalc/lib/Math/BigInt/FastCalc.pm Math::BigInt::FastCalc extension<br/>+cpan/Math-BigInt-FastCalc/t/bigintfc.t Math::BigInt::FastCalc extension<br/>+cpan/Math-BigInt-FastCalc/t/bootstrap.t Math::BigInt::FastCalc extension<br/>+cpan/Math-BigInt-FastCalc/t/leak.t test for memory leaks in Math::BigInt::FastCalc<br/>+cpan/Math-BigInt-FastCalc/t/mbi_rand.t Math::BigInt::FastCalc extension<br/>+cpan/Math-BigRat/lib/Math/BigRat.pm Math::BigRat<br/> cpan/Math-BigRat/t/big_ap.t Math::BigRat test<br/> cpan/Math-BigRat/t/bigfltpm.inc Math::BigRat test<br/> cpan/Math-BigRat/t/bigfltrt.t Math::BigRat test<br/> cpan/Math-BigRat/t/biglog.t Math::BigRat test<br/>+cpan/Math-BigRat/t/bigrat.t Math::BigRat test<br/> cpan/Math-BigRat/t/bigratpm.inc Math::BigRat test<br/> cpan/Math-BigRat/t/bigratpm.t Math::BigRat test<br/>-cpan/Math-BigRat/t/bigrat.t Math::BigRat test<br/> cpan/Math-BigRat/t/bigratup.t test under $Math::BigInt::upgrade<br/> cpan/Math-BigRat/t/bigroot.t Math::BigRat test<br/> cpan/Math-BigRat/t/bitwise.t Math::BigRat test<br/>@@ -1751,16 +1752,16 @@ cpan/Math-Complex/lib/Math/Trig.pm A simple interface to complex trigonometry<br/> cpan/Math-Complex/t/Complex.t See if Math::Complex works<br/> cpan/Math-Complex/t/Trig.t See if Math::Trig works<br/> cpan/Math-Complex/t/underbar.t See if Math::Complex works<br/>+cpan/Memoize/Memoize.pm Memoize<br/> cpan/Memoize/Memoize/AnyDBM_File.pm Memoize glue layer for AnyDBM_File<br/>-cpan/Memoize/Memoize/ExpireFile.pm Memoize expiry manager test scaffold<br/> cpan/Memoize/Memoize/Expire.pm Memoize expiry manager example<br/>+cpan/Memoize/Memoize/ExpireFile.pm Memoize expiry manager test scaffold<br/> cpan/Memoize/Memoize/ExpireTest.pm Memoize expiry manager test scaffold<br/> cpan/Memoize/Memoize/NDBM_File.pm Memoize glue layer for NDBM_File<br/>-cpan/Memoize/Memoize.pm Memoize<br/> cpan/Memoize/Memoize/SDBM_File.pm Memoize glue layer for SDBM_File<br/> cpan/Memoize/Memoize/Storable.pm Memoize glue layer for Storable<br/>-cpan/Memoize/t/array_confusion.t Memoize ambiguous array return tests<br/> cpan/Memoize/t/array.t Memoize array context return tests<br/>+cpan/Memoize/t/array_confusion.t Memoize ambiguous array return tests<br/> cpan/Memoize/t/correctness.t Memoize basic correctness tests<br/> cpan/Memoize/t/errors.t Memoize PEBKAC detection tests<br/> cpan/Memoize/t/expfile.t Memoize expiry manager tests<br/>@@ -1771,12 +1772,12 @@ cpan/Memoize/t/flush.t Memoize &#39;flush_cache&#39; function tests<br/> cpan/Memoize/t/normalize.t Memoize &#39;normalizer&#39; feature tests<br/> cpan/Memoize/t/prototype.t Memoize prototyped function handling tests<br/> cpan/Memoize/t/speed.t &quot;Makes functions faster&quot; advertisement test<br/>-cpan/Memoize/t/tiefeatures.t Memoize FAULT / MERGE / HASH options test<br/>+cpan/Memoize/t/tie.t Memoize tied file test<br/> cpan/Memoize/t/tie_gdbm.t Memoize GDBM interface test<br/> cpan/Memoize/t/tie_ndbm.t Memoize NDBM interface test<br/> cpan/Memoize/t/tie_sdbm.t Memoize SDBM interface test<br/> cpan/Memoize/t/tie_storable.t Memoize Storable interface test<br/>-cpan/Memoize/t/tie.t Memoize tied file test<br/>+cpan/Memoize/t/tiefeatures.t Memoize FAULT / MERGE / HASH options test<br/> cpan/Memoize/t/unmemoize.t Memoize &#39;unmemoize&#39; function test<br/> cpan/MIME-Base64/Base64.pm MIME::Base64 extension<br/> cpan/MIME-Base64/Base64.xs MIME::Base64 extension<br/>@@ -1785,6 +1786,15 @@ cpan/MIME-Base64/t/base64.t See whether MIME::Base64 works<br/> cpan/MIME-Base64/t/length.t See whether MIME::QuotedPrint works<br/> cpan/MIME-Base64/t/quoted-print.t See whether MIME::QuotedPrint works<br/> cpan/MIME-Base64/t/unicode.t See whether MIME::Base64 works<br/>+cpan/Module-Load/lib/Module/Load.pm Module::Load<br/>+cpan/Module-Load/t/01_Module-Load.t Module::Load tests<br/>+cpan/Module-Load/t/02_Module-Load.t Module::Load tests<br/>+cpan/Module-Load/t/to_load/config_file Module::Load tests<br/>+cpan/Module-Load/t/to_load/LoadIt.pm Module::Load tests<br/>+cpan/Module-Load/t/to_load/LoadMe.pl Module::Load tests<br/>+cpan/Module-Load/t/to_load/Must/Be/Loaded.pm Module::Load tests<br/>+cpan/Module-Load/t/to_load/TestModule.pm Module::Load tests<br/>+cpan/Module-Load/t/to_load/ToBeLoaded Module::Load tests<br/> cpan/Module-Load-Conditional/lib/Module/Load/Conditional.pm Module::Conditional<br/> cpan/Module-Load-Conditional/t/01_Module_Load_Conditional.t Module::Conditional tests<br/> cpan/Module-Load-Conditional/t/test_lib/a/X.pm Module::Conditional tests<br/>@@ -1801,15 +1811,6 @@ cpan/Module-Load-Conditional/t/to_load/NotX.pm Module::Conditional tests<br/> cpan/Module-Load-Conditional/t/to_load/ToBeLoaded Module::Conditional tests<br/> cpan/Module-Loaded/lib/Module/Loaded.pm Module::Loaded<br/> cpan/Module-Loaded/t/01_Module-Loaded.t Module::Loaded tests<br/>-cpan/Module-Load/lib/Module/Load.pm Module::Load<br/>-cpan/Module-Load/t/01_Module-Load.t Module::Load tests<br/>-cpan/Module-Load/t/02_Module-Load.t Module::Load tests<br/>-cpan/Module-Load/t/to_load/config_file Module::Load tests<br/>-cpan/Module-Load/t/to_load/LoadIt.pm Module::Load tests<br/>-cpan/Module-Load/t/to_load/LoadMe.pl Module::Load tests<br/>-cpan/Module-Load/t/to_load/Must/Be/Loaded.pm Module::Load tests<br/>-cpan/Module-Load/t/to_load/TestModule.pm Module::Load tests<br/>-cpan/Module-Load/t/to_load/ToBeLoaded Module::Load tests<br/> cpan/Module-Metadata/corpus/BOMTest/UTF16BE.pm<br/> cpan/Module-Metadata/corpus/BOMTest/UTF16LE.pm<br/> cpan/Module-Metadata/corpus/BOMTest/UTF8.pm<br/>@@ -1836,18 +1837,18 @@ cpan/NEXT/t/unseen.t NEXT<br/> cpan/Params-Check/lib/Params/Check.pm Params::Check<br/> cpan/Params-Check/t/01_Params-Check.t Params::Check tests<br/> cpan/parent/lib/parent.pm Establish an ISA relationship with base classes at compile time<br/>-cpan/parent/t/compile-time-file.t tests for parent.pm<br/> cpan/parent/t/compile-time.t tests for parent.pm<br/>-cpan/parent/t/lib/Dummy2.plugin test files for parent.pm<br/>-cpan/parent/t/lib/Dummy/Outside.pm test files for parent.pm<br/>+cpan/parent/t/compile-time-file.t tests for parent.pm<br/> cpan/parent/t/lib/Dummy.pm test files for parent.pm<br/>+cpan/parent/t/lib/Dummy/Outside.pm test files for parent.pm<br/>+cpan/parent/t/lib/Dummy2.plugin test files for parent.pm<br/> cpan/parent/t/lib/FileThatOnlyExistsAsPMC.pmc test files for parent.pm<br/> cpan/parent/t/lib/ReturnsFalse.pm test files for parent.pm<br/>+cpan/parent/t/parent.t tests for parent.pm<br/> cpan/parent/t/parent-classfromclassfile.t tests for parent.pm<br/> cpan/parent/t/parent-classfromfile.t tests for parent.pm<br/> cpan/parent/t/parent-pmc.t tests for parent.pm<br/> cpan/parent/t/parent-returns-false.t tests for parent.pm<br/>-cpan/parent/t/parent.t tests for parent.pm<br/> cpan/Parse-CPAN-Meta/corpus/BadMETA.yml<br/> cpan/Parse-CPAN-Meta/corpus/bareyaml.meta<br/> cpan/Parse-CPAN-Meta/corpus/json.meta<br/>@@ -1860,6 +1861,10 @@ cpan/Parse-CPAN-Meta/t/03_functions.t<br/> cpan/Parse-CPAN-Meta/t/04_export.t<br/> cpan/Parse-CPAN-Meta/t/05_errors.t<br/> cpan/Parse-CPAN-Meta/t/lib/Parse/CPAN/Meta/Test.pm<br/>+cpan/Perl-OSType/lib/Perl/OSType.pm Perl::OSType<br/>+cpan/Perl-OSType/t/OSType.t Perl::OSType<br/>+cpan/perlfaq/lib/perlfaq.pm Perl frequently asked questions<br/>+cpan/perlfaq/lib/perlfaq.pod Perl frequently asked questions<br/> cpan/perlfaq/lib/perlfaq1.pod General Questions About Perl<br/> cpan/perlfaq/lib/perlfaq2.pod Obtaining and Learning about Perl<br/> cpan/perlfaq/lib/perlfaq3.pod Programming Tools<br/>@@ -1869,13 +1874,9 @@ cpan/perlfaq/lib/perlfaq6.pod Regexes<br/> cpan/perlfaq/lib/perlfaq7.pod Perl Language Issues<br/> cpan/perlfaq/lib/perlfaq8.pod System Interaction<br/> cpan/perlfaq/lib/perlfaq9.pod Networking<br/>-cpan/perlfaq/lib/perlfaq.pm Perl frequently asked questions<br/>-cpan/perlfaq/lib/perlfaq.pod Perl frequently asked questions<br/> cpan/perlfaq/lib/perlglossary.pod Perl Glossary<br/> cpan/PerlIO-via-QuotedPrint/lib/PerlIO/via/QuotedPrint.pm PerlIO::via::QuotedPrint<br/> cpan/PerlIO-via-QuotedPrint/t/QuotedPrint.t PerlIO::via::QuotedPrint<br/>-cpan/Perl-OSType/lib/Perl/OSType.pm Perl::OSType<br/>-cpan/Perl-OSType/t/OSType.t Perl::OSType<br/> cpan/Pod-Checker/lib/Pod/Checker.pm<br/> cpan/Pod-Checker/scripts/podchecker.PL<br/> cpan/Pod-Checker/t/pod/contains_bad_pod.xr<br/>@@ -1892,59 +1893,6 @@ cpan/Pod-Escapes/lib/Pod/Escapes.pm Pod::Escapes<br/> cpan/Pod-Escapes/t/01_about_verbose.t test Pod::Escapes<br/> cpan/Pod-Escapes/t/10_main.t test Pod::Escapes<br/> cpan/Pod-Escapes/t/15_name2charnum.t test Pod::Escapes<br/>-cpan/podlators/lib/Pod/Man.pm Convert POD data to *roff<br/>-cpan/podlators/lib/Pod/ParseLink.pm Perl an L&lt;&gt; formatting code in POD text<br/>-cpan/podlators/lib/Pod/Text/Color.pm Convert POD data to color ASCII text<br/>-cpan/podlators/lib/Pod/Text/Overstrike.pm Convert POD data to formatted overstrike text<br/>-cpan/podlators/lib/Pod/Text.pm Pod-Parser - convert POD data to formatted ASCII text<br/>-cpan/podlators/lib/Pod/Text/Termcap.pm Convert POD data to ASCII text with format escapes<br/>-cpan/podlators/Makefile.PL podlators Makefile.PL<br/>-cpan/podlators/scripts/pod2man.PL Translator to turn pod into manpage<br/>-cpan/podlators/scripts/pod2text.PL Translator to turn pod into text<br/>-cpan/podlators/t/data/basic.cap podlators test podlators test<br/>-cpan/podlators/t/data/basic.clr podlators test<br/>-cpan/podlators/t/data/basic.man podlators test<br/>-cpan/podlators/t/data/basic.ovr podlators test<br/>-cpan/podlators/t/data/basic.pod podlators test<br/>-cpan/podlators/t/data/basic.txt podlators test<br/>-cpan/podlators/t/data/perl.conf podlators test<br/>-cpan/podlators/t/data/snippets/man/cpp podlators test<br/>-cpan/podlators/t/data/snippets/man/utf8-nonbreaking podlators test<br/>-cpan/podlators/t/data/snippets/man/utf8-verbatim podlators test<br/>-cpan/podlators/t/data/snippets/README podlators test<br/>-cpan/podlators/t/data/snippets/text/cpp podlators test<br/>-cpan/podlators/t/data/termcap podlators test<br/>-cpan/podlators/t/docs/pod-spelling.t podlators test<br/>-cpan/podlators/t/docs/pod.t podlators test<br/>-cpan/podlators/t/docs/synopsis.t podlators test<br/>-cpan/podlators/t/general/basic.t podlators test<br/>-cpan/podlators/t/general/filehandle.t podlators test<br/>-cpan/podlators/t/general/pod-parser.t podlators test<br/>-cpan/podlators/t/lib/Test/Podlators.pm podlators test<br/>-cpan/podlators/t/lib/Test/RRA/Config.pm podlators test<br/>-cpan/podlators/t/lib/Test/RRA/ModuleVersion.pm podlators test<br/>-cpan/podlators/t/lib/Test/RRA.pm podlators test<br/>-cpan/podlators/t/man/basic.t podlators test<br/>-cpan/podlators/t/man/devise-date.t podlators test<br/>-cpan/podlators/t/man/devise-title.t podlators test<br/>-cpan/podlators/t/man/empty.t podlators test<br/>-cpan/podlators/t/man/heading.t podlators test<br/>-cpan/podlators/t/man/no-encode.t podlators test<br/>-cpan/podlators/t/man/options.t podlators test<br/>-cpan/podlators/t/man/utf8-io.t podlators test<br/>-cpan/podlators/t/parselink/basic.t podlators test<br/>-cpan/podlators/t/style/minimum-version.t podlators test<br/>-cpan/podlators/t/style/module-version.t podlators test<br/>-cpan/podlators/t/style/strict.t podlators test<br/>-cpan/podlators/t/text/basic.t podlators test<br/>-cpan/podlators/t/text/color.t podlators test<br/>-cpan/podlators/t/text/empty.t podlators test<br/>-cpan/podlators/t/text/encoding.t podlators test<br/>-cpan/podlators/t/text/options.t podlators test<br/>-cpan/podlators/t/text/overstrike.t podlators test<br/>-cpan/podlators/t/text/perlio.t podlators test<br/>-cpan/podlators/t/text/termcap.t podlators test<br/>-cpan/podlators/t/text/utf8.t podlators test<br/> cpan/Pod-Parser/lib/Pod/Find.pm find POD documents in directory trees<br/> cpan/Pod-Parser/lib/Pod/InputObjects.pm Pod-Parser - define objects for input streams<br/> cpan/Pod-Parser/lib/Pod/Parser.pm Pod-Parser - define base class for parsing POD<br/>@@ -1955,18 +1903,18 @@ cpan/Pod-Parser/scripts/podselect.PL Pod-Parser - Pod::Select::podselect() CLI<br/> cpan/Pod-Parser/t/pod/contains_bad_pod.xr Pod-Parser test file<br/> cpan/Pod-Parser/t/pod/contains_pod.t Pod-Parser test<br/> cpan/Pod-Parser/t/pod/contains_pod.xr Pod-Parser test file<br/>+cpan/Pod-Parser/t/pod/empty.xr<br/> cpan/Pod-Parser/t/pod/emptycmd.t Test empty pod directives<br/> cpan/Pod-Parser/t/pod/emptycmd.xr Expected results for emptycmd.t<br/>-cpan/Pod-Parser/t/pod/empty.xr<br/> cpan/Pod-Parser/t/pod/find.t See if Pod::Find works<br/> cpan/Pod-Parser/t/pod/for.t Test =for directive<br/> cpan/Pod-Parser/t/pod/for.xr Expected results for for.t<br/> cpan/Pod-Parser/t/pod/headings.t Test =head directives<br/> cpan/Pod-Parser/t/pod/headings.xr Expected results for headings.t<br/>-cpan/Pod-Parser/t/pod/included.t Test =include directive<br/>-cpan/Pod-Parser/t/pod/included.xr Expected results for included.t<br/> cpan/Pod-Parser/t/pod/include.t Test =include directive<br/> cpan/Pod-Parser/t/pod/include.xr Expected results for include.t<br/>+cpan/Pod-Parser/t/pod/included.t Test =include directive<br/>+cpan/Pod-Parser/t/pod/included.xr Expected results for included.t<br/> cpan/Pod-Parser/t/pod/lref.t Test L&lt;...&gt; sequences<br/> cpan/Pod-Parser/t/pod/lref.xr Expected results for lref.t<br/> cpan/Pod-Parser/t/pod/multiline_items.t Test multiline =items<br/>@@ -1990,9 +1938,9 @@ cpan/Pod-Parser/t/pod/twice.t Test Pod::Parser<br/> cpan/Pod-Perldoc/corpus/no-head.pod test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/corpus/perlfunc.pod test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/corpus/utf8.pod test file for Pod-Perldoc<br/>+cpan/Pod-Perldoc/lib/Pod/Perldoc.pm guts of the &#39;perldoc&#39; utility<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/BaseTo.pm utility module for perldoc<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/GetOptsOO.pm options parsing for perldoc<br/>-cpan/Pod-Perldoc/lib/Pod/Perldoc.pm guts of the &#39;perldoc&#39; utility<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/ToANSI.pm convert POD to ANSI text<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/ToChecker.pm let perldoc check POD for errors<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/ToMan.pm render POD as man pages<br/>@@ -2008,21 +1956,21 @@ cpan/Pod-Perldoc/perldoc.pod<br/> cpan/Pod-Perldoc/t/load.t test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/t/man/_get_columns.t test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/t/pod.t test file for Pod-Perldoc<br/>+cpan/Pod-Simple/lib/Pod/Simple.pm Pod made simple<br/>+cpan/Pod-Simple/lib/Pod/Simple.pod Pod for Pod::Simple<br/> cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm Pod::Simple::BlackBox<br/> cpan/Pod-Simple/lib/Pod/Simple/Checker.pm check the Pod syntax of a document<br/> cpan/Pod-Simple/lib/Pod/Simple/Debug.pm put Pod::Simple into trace/debug mode<br/> cpan/Pod-Simple/lib/Pod/Simple/DumpAsText.pm dump Pod-parsing events as text<br/> cpan/Pod-Simple/lib/Pod/Simple/DumpAsXML.pm turn Pod into XML<br/>+cpan/Pod-Simple/lib/Pod/Simple/HTML.pm convert Pod to HTML<br/> cpan/Pod-Simple/lib/Pod/Simple/HTMLBatch.pm convert several Pod files to several HTML files<br/> cpan/Pod-Simple/lib/Pod/Simple/HTMLLegacy.pm Pod::Simple::HTMLLegacy<br/>-cpan/Pod-Simple/lib/Pod/Simple/HTML.pm convert Pod to HTML<br/> cpan/Pod-Simple/lib/Pod/Simple/LinkSection.pm represent &quot;section&quot; attributes of L codes<br/> cpan/Pod-Simple/lib/Pod/Simple/Methody.pm turn Pod::Simple events into method calls<br/>-cpan/Pod-Simple/lib/Pod/Simple.pm Pod made simple<br/>-cpan/Pod-Simple/lib/Pod/Simple.pod Pod for Pod::Simple<br/> cpan/Pod-Simple/lib/Pod/Simple/Progress.pm Pod::Simple::Progress<br/>-cpan/Pod-Simple/lib/Pod/Simple/PullParserEndToken.pm end-tokens from Pod::Simple::PullParser<br/> cpan/Pod-Simple/lib/Pod/Simple/PullParser.pm a pull-parser interface to parsing Pod<br/>+cpan/Pod-Simple/lib/Pod/Simple/PullParserEndToken.pm end-tokens from Pod::Simple::PullParser<br/> cpan/Pod-Simple/lib/Pod/Simple/PullParserStartToken.pm start-tokens from Pod::Simple::PullParser<br/> cpan/Pod-Simple/lib/Pod/Simple/PullParserTextToken.pm text-tokens from Pod::Simple::PullParser<br/> cpan/Pod-Simple/lib/Pod/Simple/PullParserToken.pm tokens from Pod::Simple::PullParser<br/>@@ -2030,25 +1978,26 @@ cpan/Pod-Simple/lib/Pod/Simple/RTF.pm format Pod as RTF<br/> cpan/Pod-Simple/lib/Pod/Simple/Search.pm find POD documents in directory trees<br/> cpan/Pod-Simple/lib/Pod/Simple/SimpleTree.pm parse Pod into a simple parse tree<br/> cpan/Pod-Simple/lib/Pod/Simple/Subclassing.pod write a formatter as a Pod::Simple subclass<br/>-cpan/Pod-Simple/lib/Pod/Simple/TextContent.pm get the text content of Pod<br/> cpan/Pod-Simple/lib/Pod/Simple/Text.pm format Pod as plaintext<br/>+cpan/Pod-Simple/lib/Pod/Simple/TextContent.pm get the text content of Pod<br/> cpan/Pod-Simple/lib/Pod/Simple/TiedOutFH.pm Pod::Simple::TiedOutFH<br/>-cpan/Pod-Simple/lib/Pod/Simple/TranscodeDumb.pm Pod::Simple::TranscodeDumb<br/> cpan/Pod-Simple/lib/Pod/Simple/Transcode.pm Pod::Simple::Transcode<br/>+cpan/Pod-Simple/lib/Pod/Simple/TranscodeDumb.pm Pod::Simple::TranscodeDumb<br/> cpan/Pod-Simple/lib/Pod/Simple/TranscodeSmart.pm Pod::Simple::TranscodeSmart<br/> cpan/Pod-Simple/lib/Pod/Simple/XHTML.pm turn Pod into XHTML<br/> cpan/Pod-Simple/lib/Pod/Simple/XMLOutStream.pm turn Pod into XML<br/> cpan/Pod-Simple/t/00about.t Pod::Simple test file<br/> cpan/Pod-Simple/t/20_skip.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/ac_d.t Pod::Simple test file<br/> cpan/Pod-Simple/t/accept01.t Pod::Simple test file<br/> cpan/Pod-Simple/t/accept05.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/ac_d.t Pod::Simple test file<br/> cpan/Pod-Simple/t/ascii_order.pl<br/> cpan/Pod-Simple/t/basic.t Pod::Simple test file<br/> cpan/Pod-Simple/t/begin.t Pod::Simple test file<br/> cpan/Pod-Simple/t/cbacks.t Pod::Simple test file<br/> cpan/Pod-Simple/t/chunking.t Pod::Simple test file<br/> cpan/Pod-Simple/t/closeys.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus.t Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jp.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jp.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jpx.txt Pod::Simple test file<br/>@@ -2057,16 +2006,6 @@ cpan/Pod-Simple/t/corpus/2202jpy.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jpy.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jpz.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jpz.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/fiqhakbar_iso6.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/fiqhakbar_iso6.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/polish_implicit_utf8.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/polish_utf16be_bom.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/polish_utf16le_bom.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/polish_utf8_bom2.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/polish_utf8_bom2.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/polish_utf8_bom.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/polish_utf8_bom.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus2/README Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/8859_7.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/8859_7.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/cp1256.txt Pod::Simple test file<br/>@@ -2091,35 +2030,44 @@ cpan/Pod-Simple/t/corpus/iso6.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/iso6.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/koi8r.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/koi8r.xml Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus/laozi38.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus/laozi38.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/laozi38b.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/laozi38b.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/laozi38p.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/laozi38p.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus/laozi38.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus/laozi38.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus/lat1frim.txt Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus/lat1frim.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/lat1fr.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/lat1fr.xml Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus/lat1frim.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus/lat1frim.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/nonesuch.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/nonesuch.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/pasternak_cp1251.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/pasternak_cp1251.xml Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus/plain.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus/plain.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/plain_explicit.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/plain_explicit.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/plain_latin1.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/plain_latin1.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus/plain.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/plain_utf8.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/plain_utf8.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus/plain.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/polish_utf8.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/polish_utf8.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/s2763_sjis.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/s2763_sjis.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus.t Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/thai_iso11.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/thai_iso11.xml Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/fiqhakbar_iso6.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/fiqhakbar_iso6.xml Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/polish_implicit_utf8.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/polish_utf16be_bom.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/polish_utf16le_bom.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/polish_utf8_bom.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/polish_utf8_bom.xml Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/polish_utf8_bom2.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/polish_utf8_bom2.xml Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus2/README Pod::Simple test file<br/> cpan/Pod-Simple/t/emptylists.t Pod::Simple test file<br/> cpan/Pod-Simple/t/enc-chars.t<br/> cpan/Pod-Simple/t/encod01.t Pod::Simple test file<br/>@@ -2127,35 +2075,35 @@ cpan/Pod-Simple/t/encod02.t Pod::Simple test file<br/> cpan/Pod-Simple/t/encod03.t Pod::Simple test file<br/> cpan/Pod-Simple/t/encod04.t<br/> cpan/Pod-Simple/t/end_over.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/eol2.t Pod::Simple test file<br/> cpan/Pod-Simple/t/eol.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/eol2.t Pod::Simple test file<br/> cpan/Pod-Simple/t/fake-closers.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/fcodes.t Pod::Simple test file<br/> cpan/Pod-Simple/t/fcodes_e.t Pod::Simple test file<br/> cpan/Pod-Simple/t/fcodes_l.t Pod::Simple test file<br/> cpan/Pod-Simple/t/fcodes_s.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/fcodes.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/fornot.t Pod::Simple test file<br/> cpan/Pod-Simple/t/for.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/fornot.t Pod::Simple test file<br/> cpan/Pod-Simple/t/heads.t Pod::Simple test file<br/> cpan/Pod-Simple/t/html01.t Pod::Simple test file<br/> cpan/Pod-Simple/t/html02.t Pod::Simple test file<br/> cpan/Pod-Simple/t/html03.t Pod::Simple test file<br/> cpan/Pod-Simple/t/htmlbat.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/items02.t Pod::Simple test file<br/> cpan/Pod-Simple/t/items.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/items02.t Pod::Simple test file<br/> cpan/Pod-Simple/t/itemstar.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/junk1o.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/junk1.pod Pod::Simple test file<br/>-cpan/Pod-Simple/t/junk2o.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/junk1o.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/junk2.pod Pod::Simple test file<br/>+cpan/Pod-Simple/t/junk2o.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/linkclas.t Pod::Simple test file<br/> cpan/Pod-Simple/t/output.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/perlcygo.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/perlcyg.pod Pod::Simple test file<br/>-cpan/Pod-Simple/t/perlfaqo.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/perlcygo.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/perlfaq.pod Pod::Simple test file<br/>-cpan/Pod-Simple/t/perlvaro.txt Pod::Simple test file<br/>+cpan/Pod-Simple/t/perlfaqo.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/perlvar.pod Pod::Simple test file<br/>+cpan/Pod-Simple/t/perlvaro.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/puller.t Pod::Simple test file<br/> cpan/Pod-Simple/t/pulltitl.t Pod::Simple test file<br/> cpan/Pod-Simple/t/reinit.t Pod::Simple test file<br/>@@ -2179,8 +2127,8 @@ cpan/Pod-Simple/t/testlib1/hinkhonk/readme.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/hinkhonk/Vliff.pm Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/pod/perlflif.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/pod/perlthng.pod Pod::Simple test file<br/>-cpan/Pod-Simple/t/testlib1/squaa/Glunk.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/squaa.pm Pod::Simple test file<br/>+cpan/Pod-Simple/t/testlib1/squaa/Glunk.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/squaa/Vliff.pm Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/zikzik.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/Zonk/Fiddle.txt Pod::Simple test file<br/>@@ -2196,16 +2144,16 @@ cpan/Pod-Simple/t/testlib2/squaa/Wowo.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib2/Suzzle.pm Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib3/squaa/Vliff.pm Pod::Simple test file<br/> cpan/Pod-Simple/t/tiedfh.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/verbatim.t Pod::Simple test file<br/> cpan/Pod-Simple/t/verb_fmt.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/verbatim.t Pod::Simple test file<br/> cpan/Pod-Simple/t/whine.t<br/>+cpan/Pod-Simple/t/x_nixer.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/xhtml-bkb.t<br/> cpan/Pod-Simple/t/xhtml01.t Pod::Simple test file<br/> cpan/Pod-Simple/t/xhtml05.t Pod::Simple test file<br/> cpan/Pod-Simple/t/xhtml10.t Pod::Simple test file<br/> cpan/Pod-Simple/t/xhtml15.t Pod::Simple test file<br/> cpan/Pod-Simple/t/xhtml20.t Pod::Simple test file<br/>-cpan/Pod-Simple/t/xhtml-bkb.t<br/>-cpan/Pod-Simple/t/x_nixer.t Pod::Simple test file<br/> cpan/Pod-Usage/lib/Pod/Usage.pm<br/> cpan/Pod-Usage/scripts/pod2usage.PL<br/> cpan/Pod-Usage/t/inc/Pod/InputObjects.pm<br/>@@ -2215,17 +2163,70 @@ cpan/Pod-Usage/t/inc/Pod/Select.pm<br/> cpan/Pod-Usage/t/pod/headwithmarkup.pl<br/> cpan/Pod-Usage/t/pod/headwithmarkup.t<br/> cpan/Pod-Usage/t/pod/p2u_data.pl<br/>-cpan/Pod-Usage/t/pod/pod2usage2.t<br/> cpan/Pod-Usage/t/pod/pod2usage.t<br/> cpan/Pod-Usage/t/pod/pod2usage.xr<br/>+cpan/Pod-Usage/t/pod/pod2usage2.t<br/> cpan/Pod-Usage/t/pod/selectheaders.pl<br/> cpan/Pod-Usage/t/pod/selectheaders.t<br/> cpan/Pod-Usage/t/pod/selectsections.pl<br/> cpan/Pod-Usage/t/pod/selectsections.t<br/> cpan/Pod-Usage/t/pod/testcmp.pl<br/> cpan/Pod-Usage/t/pod/testp2pt.pl<br/>-cpan/Pod-Usage/t/pod/usage2.pod<br/> cpan/Pod-Usage/t/pod/usage.pod<br/>+cpan/Pod-Usage/t/pod/usage2.pod<br/>+cpan/podlators/lib/Pod/Man.pm Convert POD data to *roff<br/>+cpan/podlators/lib/Pod/ParseLink.pm Perl an L&lt;&gt; formatting code in POD text<br/>+cpan/podlators/lib/Pod/Text.pm Pod-Parser - convert POD data to formatted ASCII text<br/>+cpan/podlators/lib/Pod/Text/Color.pm Convert POD data to color ASCII text<br/>+cpan/podlators/lib/Pod/Text/Overstrike.pm Convert POD data to formatted overstrike text<br/>+cpan/podlators/lib/Pod/Text/Termcap.pm Convert POD data to ASCII text with format escapes<br/>+cpan/podlators/Makefile.PL podlators Makefile.PL<br/>+cpan/podlators/scripts/pod2man.PL Translator to turn pod into manpage<br/>+cpan/podlators/scripts/pod2text.PL Translator to turn pod into text<br/>+cpan/podlators/t/data/basic.cap podlators test podlators test<br/>+cpan/podlators/t/data/basic.clr podlators test<br/>+cpan/podlators/t/data/basic.man podlators test<br/>+cpan/podlators/t/data/basic.ovr podlators test<br/>+cpan/podlators/t/data/basic.pod podlators test<br/>+cpan/podlators/t/data/basic.txt podlators test<br/>+cpan/podlators/t/data/perl.conf podlators test<br/>+cpan/podlators/t/data/snippets/man/cpp podlators test<br/>+cpan/podlators/t/data/snippets/man/utf8-nonbreaking podlators test<br/>+cpan/podlators/t/data/snippets/man/utf8-verbatim podlators test<br/>+cpan/podlators/t/data/snippets/README podlators test<br/>+cpan/podlators/t/data/snippets/text/cpp podlators test<br/>+cpan/podlators/t/data/termcap podlators test<br/>+cpan/podlators/t/docs/pod.t podlators test<br/>+cpan/podlators/t/docs/pod-spelling.t podlators test<br/>+cpan/podlators/t/docs/synopsis.t podlators test<br/>+cpan/podlators/t/general/basic.t podlators test<br/>+cpan/podlators/t/general/filehandle.t podlators test<br/>+cpan/podlators/t/general/pod-parser.t podlators test<br/>+cpan/podlators/t/lib/Test/Podlators.pm podlators test<br/>+cpan/podlators/t/lib/Test/RRA.pm podlators test<br/>+cpan/podlators/t/lib/Test/RRA/Config.pm podlators test<br/>+cpan/podlators/t/lib/Test/RRA/ModuleVersion.pm podlators test<br/>+cpan/podlators/t/man/basic.t podlators test<br/>+cpan/podlators/t/man/devise-date.t podlators test<br/>+cpan/podlators/t/man/devise-title.t podlators test<br/>+cpan/podlators/t/man/empty.t podlators test<br/>+cpan/podlators/t/man/heading.t podlators test<br/>+cpan/podlators/t/man/no-encode.t podlators test<br/>+cpan/podlators/t/man/options.t podlators test<br/>+cpan/podlators/t/man/utf8-io.t podlators test<br/>+cpan/podlators/t/parselink/basic.t podlators test<br/>+cpan/podlators/t/style/minimum-version.t podlators test<br/>+cpan/podlators/t/style/module-version.t podlators test<br/>+cpan/podlators/t/style/strict.t podlators test<br/>+cpan/podlators/t/text/basic.t podlators test<br/>+cpan/podlators/t/text/color.t podlators test<br/>+cpan/podlators/t/text/empty.t podlators test<br/>+cpan/podlators/t/text/encoding.t podlators test<br/>+cpan/podlators/t/text/options.t podlators test<br/>+cpan/podlators/t/text/overstrike.t podlators test<br/>+cpan/podlators/t/text/perlio.t podlators test<br/>+cpan/podlators/t/text/termcap.t podlators test<br/>+cpan/podlators/t/text/utf8.t podlators test<br/> cpan/Scalar-List-Utils/lib/List/Util.pm List::Util<br/> cpan/Scalar-List-Utils/lib/List/Util/XS.pm List::Util<br/> cpan/Scalar-List-Utils/lib/Scalar/Util.pm Scalar::Util<br/>@@ -2241,10 +2242,10 @@ cpan/Scalar-List-Utils/t/first.t List::Util<br/> cpan/Scalar-List-Utils/t/getmagic-once.t<br/> cpan/Scalar-List-Utils/t/isvstring.t Scalar::Util<br/> cpan/Scalar-List-Utils/t/lln.t Scalar::Util<br/>-cpan/Scalar-List-Utils/t/maxstr.t List::Util<br/> cpan/Scalar-List-Utils/t/max.t List::Util<br/>-cpan/Scalar-List-Utils/t/minstr.t List::Util<br/>+cpan/Scalar-List-Utils/t/maxstr.t List::Util<br/> cpan/Scalar-List-Utils/t/min.t List::Util<br/>+cpan/Scalar-List-Utils/t/minstr.t List::Util<br/> cpan/Scalar-List-Utils/t/openhan.t Scalar::Util<br/> cpan/Scalar-List-Utils/t/pair.t<br/> cpan/Scalar-List-Utils/t/product.t List::Util<br/>@@ -2258,8 +2259,8 @@ cpan/Scalar-List-Utils/t/scalarutil-proto.t<br/> cpan/Scalar-List-Utils/t/shuffle.t List::Util<br/> cpan/Scalar-List-Utils/t/stack-corruption.t List::Util<br/> cpan/Scalar-List-Utils/t/subname.t<br/>-cpan/Scalar-List-Utils/t/sum0.t<br/> cpan/Scalar-List-Utils/t/sum.t List::Util<br/>+cpan/Scalar-List-Utils/t/sum0.t<br/> cpan/Scalar-List-Utils/t/tainted.t Scalar::Util<br/> cpan/Scalar-List-Utils/t/uniq.t Scalar::Util<br/> cpan/Scalar-List-Utils/t/weak.t Scalar::Util<br/>@@ -2271,8 +2272,8 @@ cpan/Socket/t/getnameinfo.t See if Socket::getnameinfo works<br/> cpan/Socket/t/ip_mreq.t See if (un)pack_ip_mreq work<br/> cpan/Socket/t/ipv6_mreq.t See if (un)pack_ipv6_mreq work<br/> cpan/Socket/t/sockaddr.t<br/>-cpan/Socket/t/socketpair.t See if socketpair works<br/> cpan/Socket/t/Socket.t See if Socket works<br/>+cpan/Socket/t/socketpair.t See if socketpair works<br/> cpan/Socket/typemap<br/> cpan/Sys-Syslog/fallback/const-c.inc Sys::Syslog constants fallback file<br/> cpan/Sys-Syslog/fallback/const-xs.inc Sys::Syslog constants fallback file<br/>@@ -2285,16 +2286,16 @@ cpan/Sys-Syslog/t/constants.t test for Sys::Syslog<br/> cpan/Sys-Syslog/t/facilities-routing.t test for Sys::Syslog<br/> cpan/Sys-Syslog/t/syslog.t See if Sys::Syslog works<br/> cpan/Sys-Syslog/win32/compile.pl Sys::Syslog extension Win32 related file<br/>-cpan/Sys-Syslog/win32/PerlLog_dll.uu Sys::Syslog extension Win32 related file<br/> cpan/Sys-Syslog/win32/PerlLog.mc Sys::Syslog extension Win32 related file<br/>+cpan/Sys-Syslog/win32/PerlLog_dll.uu Sys::Syslog extension Win32 related file<br/> cpan/Sys-Syslog/win32/PerlLog_RES.uu Sys::Syslog extension Win32 related file<br/> cpan/Sys-Syslog/win32/Win32.pm Sys::Syslog extension Win32 related file<br/> cpan/Term-ANSIColor/lib/Term/ANSIColor.pm<br/>-cpan/Term-ANSIColor/t/lib/Test/RRA/Config.pm<br/> cpan/Term-ANSIColor/t/lib/Test/RRA.pm<br/>+cpan/Term-ANSIColor/t/lib/Test/RRA/Config.pm<br/> cpan/Term-ANSIColor/t/module/aliases-func.t<br/>-cpan/Term-ANSIColor/t/module/basic256.t<br/> cpan/Term-ANSIColor/t/module/basic.t<br/>+cpan/Term-ANSIColor/t/module/basic256.t<br/> cpan/Term-ANSIColor/t/module/eval.t<br/> cpan/Term-ANSIColor/t/module/stringify.t<br/> cpan/Term-ANSIColor/t/taint/basic.t<br/>@@ -2308,45 +2309,45 @@ cpan/Test-Harness/lib/App/Prove/State/Result/Test.pm Gubbins for the prove utili<br/> cpan/Test-Harness/lib/TAP/Base.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Base.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Color.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Formatter/Console/ParallelSession.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Console.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Formatter/Console/ParallelSession.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Console/Session.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/File.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/File/Session.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Session.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Harness.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Harness/Beyond.pod<br/> cpan/Test-Harness/lib/TAP/Harness/Env.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Harness.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Object.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Aggregator.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Grammar.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/Iterator/Array.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/IteratorFactory.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Iterator.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/Iterator/Array.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Iterator/Process.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Iterator/Stream.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/IteratorFactory.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Multiplexer.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/Result.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Bailout.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Comment.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/ResultFactory.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Plan.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/Result.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Pragma.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Test.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Unknown.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Version.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/YAML.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/Scheduler/Job.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/ResultFactory.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Scheduler.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/Scheduler/Job.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Scheduler/Spinner.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/Source.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/SourceHandler.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Executable.pm<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/File.pm<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Handle.pm<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Perl.pm<br/>-cpan/Test-Harness/lib/TAP/Parser/SourceHandler.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/RawTAP.pm<br/>-cpan/Test-Harness/lib/TAP/Parser/Source.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/YAMLish/Reader.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/YAMLish/Writer.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/Test/Harness.pm A test harness<br/>@@ -2354,8 +2355,8 @@ cpan/Test-Harness/t/aggregator.t Test::Harness test<br/> cpan/Test-Harness/t/bailout.t Test::Harness test<br/> cpan/Test-Harness/t/base.t Test::Harness test<br/> cpan/Test-Harness/t/callbacks.t Test::Harness test<br/>-cpan/Test-Harness/t/compat/env_opts.t Test::Harness test<br/> cpan/Test-Harness/t/compat/env.t Test::Harness test<br/>+cpan/Test-Harness/t/compat/env_opts.t Test::Harness test<br/> cpan/Test-Harness/t/compat/failure.t Test::Harness test<br/> cpan/Test-Harness/t/compat/inc-propagation.t Test::Harness test<br/> cpan/Test-Harness/t/compat/inc_taint.t Test::Harness test<br/>@@ -2373,13 +2374,13 @@ cpan/Test-Harness/t/errors.t Test::Harness test<br/> cpan/Test-Harness/t/file.t Test::Harness test<br/> cpan/Test-Harness/t/glob-to-regexp.t Test::Harness test<br/> cpan/Test-Harness/t/grammar.t Test::Harness test<br/>+cpan/Test-Harness/t/harness.t Test::Harness test<br/> cpan/Test-Harness/t/harness-bailout.t Test::Harness test<br/> cpan/Test-Harness/t/harness-subclass.t Test::Harness test<br/>-cpan/Test-Harness/t/harness.t Test::Harness test<br/> cpan/Test-Harness/t/iterator_factory.t Test::Harness test<br/> cpan/Test-Harness/t/iterators.t Test::Harness test<br/>-cpan/Test-Harness/t/lib/App/Prove/Plugin/Dummy2.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/App/Prove/Plugin/Dummy.pm Module for testing Test::Harness<br/>+cpan/Test-Harness/t/lib/App/Prove/Plugin/Dummy2.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/Dev/Null.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/EmptyParser.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/IO/c55Capture.pm Module for testing Test::Harness<br/>@@ -2388,8 +2389,8 @@ cpan/Test-Harness/t/lib/MyFileSourceHandler.pm Test::Harness test<br/> cpan/Test-Harness/t/lib/MyGrammar.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/MyIterator.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/MyPerlSourceHandler.pm Test::Harness test<br/>-cpan/Test-Harness/t/lib/MyResultFactory.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/MyResult.pm Module for testing Test::Harness<br/>+cpan/Test-Harness/t/lib/MyResultFactory.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/MySourceHandler.pm Test::Harness test<br/> cpan/Test-Harness/t/lib/NoFork.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/lib/NOP.pm Module for testing Test::Harness<br/>@@ -2397,19 +2398,19 @@ cpan/Test-Harness/t/lib/TAP/Harness/TestSubclass.pm<br/> cpan/Test-Harness/t/lib/TAP/Parser/SubclassTest.pm Module for testing Test::Harness<br/> cpan/Test-Harness/t/multiplexer.t Test::Harness test<br/> cpan/Test-Harness/t/nested.t Test::Harness test<br/>-cpan/Test-Harness/t/nofork-mux.t Test::Harness test<br/> cpan/Test-Harness/t/nofork.t Test::Harness test<br/>+cpan/Test-Harness/t/nofork-mux.t Test::Harness test<br/> cpan/Test-Harness/t/object.t Test::Harness test<br/>+cpan/Test-Harness/t/parse.t Test::Harness test<br/> cpan/Test-Harness/t/parser-config.t Test::Harness test<br/> cpan/Test-Harness/t/parser-subclass.t Test::Harness test<br/>-cpan/Test-Harness/t/parse.t Test::Harness test<br/> cpan/Test-Harness/t/perl5lib.t Test::Harness test<br/> cpan/Test-Harness/t/premature-bailout.t Test::Harness test<br/> cpan/Test-Harness/t/process.t Test::Harness test<br/>-cpan/Test-Harness/t/proverc/emptyexec Test data for Test::Harness<br/>+cpan/Test-Harness/t/prove.t Test::Harness test<br/> cpan/Test-Harness/t/proverc.t Test::Harness test<br/>+cpan/Test-Harness/t/proverc/emptyexec Test data for Test::Harness<br/> cpan/Test-Harness/t/proverun.t Test::Harness test<br/>-cpan/Test-Harness/t/prove.t Test::Harness test<br/> cpan/Test-Harness/t/proveversion.t Test::Harness test<br/> cpan/Test-Harness/t/regression.t Test::Harness test<br/> cpan/Test-Harness/t/results.t Test::Harness test<br/>@@ -2449,10 +2450,10 @@ cpan/Test-Harness/t/sample-tests/simple_fail Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/simple_yaml Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/simple_yaml_missing_version13 Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/skip Test data for Test::Harness<br/>+cpan/Test-Harness/t/sample-tests/skip_nomsg Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/skipall Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/skipall_nomsg Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/skipall_v13 Test data for Test::Harness<br/>-cpan/Test-Harness/t/sample-tests/skip_nomsg Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/space_after_plan Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/stdout_stderr Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/strict Test data for Test::Harness<br/>@@ -2471,8 +2472,8 @@ cpan/Test-Harness/t/sample-tests/with_comments Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/yaml_late_plan Test data for Test::Harness<br/> cpan/Test-Harness/t/sample-tests/zero_valid Test data for Test::Harness<br/> cpan/Test-Harness/t/scheduler.t Test::Harness test<br/>-cpan/Test-Harness/t/source_handler.t Test::Harness test<br/> cpan/Test-Harness/t/source.t Test::Harness test<br/>+cpan/Test-Harness/t/source_handler.t Test::Harness test<br/> cpan/Test-Harness/t/source_tests/harness Test data for Test::Harness<br/> cpan/Test-Harness/t/source_tests/harness_badtap Test data for Test::Harness<br/> cpan/Test-Harness/t/source_tests/harness_complain Test data for Test::Harness<br/>@@ -2481,30 +2482,48 @@ cpan/Test-Harness/t/source_tests/harness_failure Test data for Test::Harness<br/> cpan/Test-Harness/t/source_tests/psql.bat Test::Harness test<br/> cpan/Test-Harness/t/source_tests/source Test data for Test::Harness<br/> cpan/Test-Harness/t/source_tests/source.1 Test::Harness test<br/>-cpan/Test-Harness/t/source_tests/source_args.sh Test::Harness test<br/> cpan/Test-Harness/t/source_tests/source.bat Test::Harness test<br/> cpan/Test-Harness/t/source_tests/source.pl Test::Harness test<br/> cpan/Test-Harness/t/source_tests/source.sh Test::Harness test<br/> cpan/Test-Harness/t/source_tests/source.t Test::Harness test<br/> cpan/Test-Harness/t/source_tests/source.tap Test::Harness test<br/>+cpan/Test-Harness/t/source_tests/source_args.sh Test::Harness test<br/> cpan/Test-Harness/t/spool.t Test::Harness test<br/>-cpan/Test-Harness/t/state_results.t Test::Harness test<br/> cpan/Test-Harness/t/state.t Test::Harness test<br/>+cpan/Test-Harness/t/state_results.t Test::Harness test<br/> cpan/Test-Harness/t/streams.t Test::Harness test<br/> cpan/Test-Harness/t/subclass_tests/non_perl_source Test data for Test::Harness<br/> cpan/Test-Harness/t/subclass_tests/perl_source Test data for Test::Harness<br/> cpan/Test-Harness/t/taint.t Test::Harness test<br/> cpan/Test-Harness/t/testargs.t Test::Harness test<br/> cpan/Test-Harness/t/unicode.t Test::Harness test<br/>-cpan/Test-Harness/t/yamlish-output.t Test::Harness test<br/> cpan/Test-Harness/t/yamlish.t Test::Harness test<br/>+cpan/Test-Harness/t/yamlish-output.t Test::Harness test<br/> cpan/Test-Harness/t/yamlish-writer.t Test::Harness test<br/> cpan/Test-Simple/lib/ok.pm<br/>+cpan/Test-Simple/lib/Test/Builder.pm<br/>+cpan/Test-Simple/lib/Test/Builder/Formatter.pm<br/>+cpan/Test-Simple/lib/Test/Builder/IO/Scalar.pm<br/>+cpan/Test-Simple/lib/Test/Builder/Module.pm<br/>+cpan/Test-Simple/lib/Test/Builder/Tester.pm<br/>+cpan/Test-Simple/lib/Test/Builder/Tester/Color.pm<br/>+cpan/Test-Simple/lib/Test/Builder/TodoDiag.pm<br/>+cpan/Test-Simple/lib/Test/FAQ.pod<br/>+cpan/Test-Simple/lib/Test/More.pm<br/>+cpan/Test-Simple/lib/Test/Simple.pm<br/>+cpan/Test-Simple/lib/Test/Tester.pm<br/>+cpan/Test-Simple/lib/Test/Tester/Capture.pm<br/>+cpan/Test-Simple/lib/Test/Tester/CaptureRunner.pm<br/>+cpan/Test-Simple/lib/Test/Tester/Delegate.pm<br/>+cpan/Test-Simple/lib/Test/Tutorial.pod<br/>+cpan/Test-Simple/lib/Test/use/ok.pm<br/>+cpan/Test-Simple/lib/Test2.pm<br/>+cpan/Test-Simple/lib/Test2/API.pm<br/> cpan/Test-Simple/lib/Test2/API/Breakage.pm<br/> cpan/Test-Simple/lib/Test2/API/Context.pm<br/> cpan/Test-Simple/lib/Test2/API/Instance.pm<br/>-cpan/Test-Simple/lib/Test2/API.pm<br/> cpan/Test-Simple/lib/Test2/API/Stack.pm<br/>+cpan/Test-Simple/lib/Test2/Event.pm<br/> cpan/Test-Simple/lib/Test2/Event/Bail.pm<br/> cpan/Test-Simple/lib/Test2/Event/Diag.pm<br/> cpan/Test-Simple/lib/Test2/Event/Exception.pm<br/>@@ -2512,45 +2531,26 @@ cpan/Test-Simple/lib/Test2/Event/Generic.pm<br/> cpan/Test-Simple/lib/Test2/Event/Note.pm<br/> cpan/Test-Simple/lib/Test2/Event/Ok.pm<br/> cpan/Test-Simple/lib/Test2/Event/Plan.pm<br/>-cpan/Test-Simple/lib/Test2/Event.pm<br/> cpan/Test-Simple/lib/Test2/Event/Skip.pm<br/> cpan/Test-Simple/lib/Test2/Event/Subtest.pm<br/> cpan/Test-Simple/lib/Test2/Event/Waiting.pm<br/> cpan/Test-Simple/lib/Test2/Formatter.pm<br/> cpan/Test-Simple/lib/Test2/Formatter/TAP.pm<br/>+cpan/Test-Simple/lib/Test2/Hub.pm<br/> cpan/Test-Simple/lib/Test2/Hub/Interceptor.pm<br/> cpan/Test-Simple/lib/Test2/Hub/Interceptor/Terminator.pm<br/>-cpan/Test-Simple/lib/Test2/Hub.pm<br/> cpan/Test-Simple/lib/Test2/Hub/Subtest.pm<br/>-cpan/Test-Simple/lib/Test2/IPC/Driver/Files.pm<br/>-cpan/Test-Simple/lib/Test2/IPC/Driver.pm<br/> cpan/Test-Simple/lib/Test2/IPC.pm<br/>-cpan/Test-Simple/lib/Test2.pm<br/>+cpan/Test-Simple/lib/Test2/IPC/Driver.pm<br/>+cpan/Test-Simple/lib/Test2/IPC/Driver/Files.pm<br/> cpan/Test-Simple/lib/Test2/Transition.pod<br/>+cpan/Test-Simple/lib/Test2/Util.pm<br/> cpan/Test-Simple/lib/Test2/Util/ExternalMeta.pm<br/> cpan/Test-Simple/lib/Test2/Util/HashBase.pm<br/>-cpan/Test-Simple/lib/Test2/Util.pm<br/> cpan/Test-Simple/lib/Test2/Util/Trace.pm<br/>-cpan/Test-Simple/lib/Test/Builder/Formatter.pm<br/>-cpan/Test-Simple/lib/Test/Builder/IO/Scalar.pm<br/>-cpan/Test-Simple/lib/Test/Builder/Module.pm<br/>-cpan/Test-Simple/lib/Test/Builder.pm<br/>-cpan/Test-Simple/lib/Test/Builder/Tester/Color.pm<br/>-cpan/Test-Simple/lib/Test/Builder/Tester.pm<br/>-cpan/Test-Simple/lib/Test/Builder/TodoDiag.pm<br/>-cpan/Test-Simple/lib/Test/FAQ.pod<br/>-cpan/Test-Simple/lib/Test/More.pm<br/>-cpan/Test-Simple/lib/Test/Simple.pm<br/>-cpan/Test-Simple/lib/Test/Tester/Capture.pm<br/>-cpan/Test-Simple/lib/Test/Tester/CaptureRunner.pm<br/>-cpan/Test-Simple/lib/Test/Tester/Delegate.pm<br/>-cpan/Test-Simple/lib/Test/Tester.pm<br/>-cpan/Test-Simple/lib/Test/Tutorial.pod<br/>-cpan/Test-Simple/lib/Test/use/ok.pm<br/> cpan/Test-Simple/t/Legacy/00test_harness_check.t<br/> cpan/Test-Simple/t/Legacy/01-basic.t<br/> cpan/Test-Simple/t/Legacy/478-cmp_ok_hash.t<br/>-cpan/Test-Simple/t/Legacy_And_Test2/builder_loaded_late.t<br/> cpan/Test-Simple/t/Legacy/auto.t<br/> cpan/Test-Simple/t/Legacy/bad_plan.t<br/> cpan/Test-Simple/t/Legacy/bail_out.t<br/>@@ -2565,15 +2565,15 @@ cpan/Test-Simple/t/Legacy/Builder/create.t<br/> cpan/Test-Simple/t/Legacy/Builder/current_test.t<br/> cpan/Test-Simple/t/Legacy/Builder/current_test_without_plan.t<br/> cpan/Test-Simple/t/Legacy/Builder/details.t<br/>+cpan/Test-Simple/t/Legacy/Builder/done_testing.t<br/> cpan/Test-Simple/t/Legacy/Builder/done_testing_double.t<br/> cpan/Test-Simple/t/Legacy/Builder/done_testing_plan_mismatch.t<br/>-cpan/Test-Simple/t/Legacy/Builder/done_testing.t<br/> cpan/Test-Simple/t/Legacy/Builder/done_testing_with_no_plan.t<br/> cpan/Test-Simple/t/Legacy/Builder/done_testing_with_number.t<br/> cpan/Test-Simple/t/Legacy/Builder/done_testing_with_plan.t<br/> cpan/Test-Simple/t/Legacy/Builder/fork_with_new_stdout.t<br/>-cpan/Test-Simple/t/Legacy/Builder/has_plan2.t<br/> cpan/Test-Simple/t/Legacy/Builder/has_plan.t<br/>+cpan/Test-Simple/t/Legacy/Builder/has_plan2.t<br/> cpan/Test-Simple/t/Legacy/Builder/is_fh.t<br/> cpan/Test-Simple/t/Legacy/Builder/is_passing.t<br/> cpan/Test-Simple/t/Legacy/Builder/maybe_regex.t<br/>@@ -2583,11 +2583,11 @@ cpan/Test-Simple/t/Legacy/Builder/no_header.t<br/> cpan/Test-Simple/t/Legacy/Builder/no_plan_at_all.t<br/> cpan/Test-Simple/t/Legacy/Builder/ok_obj.t<br/> cpan/Test-Simple/t/Legacy/Builder/output.t<br/>-cpan/Test-Simple/t/Legacy/Builder/reset_outputs.t<br/> cpan/Test-Simple/t/Legacy/Builder/reset.t<br/>+cpan/Test-Simple/t/Legacy/Builder/reset_outputs.t<br/> cpan/Test-Simple/t/Legacy/Builder/try.t<br/>-cpan/Test-Simple/t/Legacy/capture.t<br/> cpan/Test-Simple/t/Legacy/c_flag.t<br/>+cpan/Test-Simple/t/Legacy/capture.t<br/> cpan/Test-Simple/t/Legacy/check_tests.t<br/> cpan/Test-Simple/t/Legacy/circular_data.t<br/> cpan/Test-Simple/t/Legacy/cmp_ok.t<br/>@@ -2597,14 +2597,14 @@ cpan/Test-Simple/t/Legacy/died.t<br/> cpan/Test-Simple/t/Legacy/dont_overwrite_die_handler.t<br/> cpan/Test-Simple/t/Legacy/eq_set.t<br/> cpan/Test-Simple/t/Legacy/exit.t<br/>-cpan/Test-Simple/t/Legacy/explain_err_vars.t<br/> cpan/Test-Simple/t/Legacy/explain.t<br/>-cpan/Test-Simple/t/Legacy/extra_one.t<br/>+cpan/Test-Simple/t/Legacy/explain_err_vars.t<br/> cpan/Test-Simple/t/Legacy/extra.t<br/>+cpan/Test-Simple/t/Legacy/extra_one.t<br/>+cpan/Test-Simple/t/Legacy/fail.t<br/> cpan/Test-Simple/t/Legacy/fail-like.t<br/> cpan/Test-Simple/t/Legacy/fail-more.t<br/> cpan/Test-Simple/t/Legacy/fail_one.t<br/>-cpan/Test-Simple/t/Legacy/fail.t<br/> cpan/Test-Simple/t/Legacy/filehandles.t<br/> cpan/Test-Simple/t/Legacy/fork.t<br/> cpan/Test-Simple/t/Legacy/harness_active.t<br/>@@ -2620,19 +2620,19 @@ cpan/Test-Simple/t/Legacy/no_tests.t<br/> cpan/Test-Simple/t/Legacy/note.t<br/> cpan/Test-Simple/t/Legacy/overload.t<br/> cpan/Test-Simple/t/Legacy/overload_threads.t<br/>+cpan/Test-Simple/t/Legacy/plan.t<br/> cpan/Test-Simple/t/Legacy/plan_bad.t<br/> cpan/Test-Simple/t/Legacy/plan_is_noplan.t<br/> cpan/Test-Simple/t/Legacy/plan_no_plan.t<br/> cpan/Test-Simple/t/Legacy/plan_shouldnt_import.t<br/> cpan/Test-Simple/t/Legacy/plan_skip_all.t<br/>-cpan/Test-Simple/t/Legacy/plan.t<br/> cpan/Test-Simple/t/Legacy/Regression/637.t<br/> cpan/Test-Simple/t/Legacy/require_ok.t<br/> cpan/Test-Simple/t/Legacy/run_test.t<br/>-cpan/Test-Simple/t/Legacy/Simple/load.t<br/> cpan/Test-Simple/t/Legacy/simple.t<br/>-cpan/Test-Simple/t/Legacy/skipall.t<br/>+cpan/Test-Simple/t/Legacy/Simple/load.t<br/> cpan/Test-Simple/t/Legacy/skip.t<br/>+cpan/Test-Simple/t/Legacy/skipall.t<br/> cpan/Test-Simple/t/Legacy/strays.t<br/> cpan/Test-Simple/t/Legacy/subtest/args.t<br/> cpan/Test-Simple/t/Legacy/subtest/bail_out.t<br/>@@ -2660,16 +2660,17 @@ cpan/Test-Simple/t/Legacy/Tester/tbt_05faildiag.t<br/> cpan/Test-Simple/t/Legacy/Tester/tbt_06errormess.t<br/> cpan/Test-Simple/t/Legacy/Tester/tbt_07args.t<br/> cpan/Test-Simple/t/Legacy/Tester/tbt_08subtest.t<br/>-cpan/Test-Simple/t/Legacy/Tester/tbt_09do_script.pl<br/> cpan/Test-Simple/t/Legacy/Tester/tbt_09do.t<br/>-cpan/Test-Simple/t/Legacy/threads.t<br/>+cpan/Test-Simple/t/Legacy/Tester/tbt_09do_script.pl<br/> cpan/Test-Simple/t/Legacy/thread_taint.t<br/>+cpan/Test-Simple/t/Legacy/threads.t<br/> cpan/Test-Simple/t/Legacy/todo.t<br/> cpan/Test-Simple/t/Legacy/undef.t<br/>-cpan/Test-Simple/t/Legacy/useing.t<br/> cpan/Test-Simple/t/Legacy/use_ok.t<br/>+cpan/Test-Simple/t/Legacy/useing.t<br/> cpan/Test-Simple/t/Legacy/utf8.t<br/> cpan/Test-Simple/t/Legacy/versions.t<br/>+cpan/Test-Simple/t/Legacy_And_Test2/builder_loaded_late.t<br/> cpan/Test-Simple/t/lib/Dev/Null.pm<br/> cpan/Test-Simple/t/lib/Dummy.pm<br/> cpan/Test-Simple/t/lib/MyOverload.pm<br/>@@ -2679,8 +2680,8 @@ cpan/Test-Simple/t/lib/SigDie.pm<br/> cpan/Test-Simple/t/lib/SmallTest.pm<br/> cpan/Test-Simple/t/lib/Test/Builder/NoOutput.pm<br/> cpan/Test-Simple/t/lib/Test/Simple/Catch.pm<br/>-cpan/Test-Simple/t/lib/Test/Simple/sample_tests/death_in_eval.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/death.plx<br/>+cpan/Test-Simple/t/lib/Test/Simple/sample_tests/death_in_eval.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/death_with_handler.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/exit.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/extras.plx<br/>@@ -2692,8 +2693,8 @@ cpan/Test-Simple/t/lib/Test/Simple/sample_tests/one_fail_without_plan.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/pre_plan_death.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/require.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/success.plx<br/>-cpan/Test-Simple/t/lib/Test/Simple/sample_tests/too_few_fail.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/too_few.plx<br/>+cpan/Test-Simple/t/lib/Test/Simple/sample_tests/too_few_fail.plx<br/> cpan/Test-Simple/t/lib/Test/Simple/sample_tests/two_fail.plx<br/> cpan/Test-Simple/t/lib/TieOut.pm<br/> cpan/Test-Simple/t/regression/642_persistent_end.t<br/>@@ -2715,11 +2716,12 @@ cpan/Test-Simple/t/Test2/behavior/Subtest_events.t<br/> cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t<br/> cpan/Test-Simple/t/Test2/behavior/Taint.t<br/> cpan/Test-Simple/t/Test2/legacy/TAP.t<br/>+cpan/Test-Simple/t/Test2/modules/API.t<br/> cpan/Test-Simple/t/Test2/modules/API/Breakage.t<br/> cpan/Test-Simple/t/Test2/modules/API/Context.t<br/> cpan/Test-Simple/t/Test2/modules/API/Instance.t<br/> cpan/Test-Simple/t/Test2/modules/API/Stack.t<br/>-cpan/Test-Simple/t/Test2/modules/API.t<br/>+cpan/Test-Simple/t/Test2/modules/Event.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Bail.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Diag.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Exception.t<br/>@@ -2729,19 +2731,18 @@ cpan/Test-Simple/t/Test2/modules/Event/Ok.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Plan.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Skip.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Subtest.t<br/>-cpan/Test-Simple/t/Test2/modules/Event.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Waiting.t<br/> cpan/Test-Simple/t/Test2/modules/Formatter/TAP.t<br/>+cpan/Test-Simple/t/Test2/modules/Hub.t<br/> cpan/Test-Simple/t/Test2/modules/Hub/Interceptor.t<br/> cpan/Test-Simple/t/Test2/modules/Hub/Interceptor/Terminator.t<br/> cpan/Test-Simple/t/Test2/modules/Hub/Subtest.t<br/>-cpan/Test-Simple/t/Test2/modules/Hub.t<br/>-cpan/Test-Simple/t/Test2/modules/IPC/Driver/Files.t<br/>-cpan/Test-Simple/t/Test2/modules/IPC/Driver.t<br/> cpan/Test-Simple/t/Test2/modules/IPC.t<br/>+cpan/Test-Simple/t/Test2/modules/IPC/Driver.t<br/>+cpan/Test-Simple/t/Test2/modules/IPC/Driver/Files.t<br/>+cpan/Test-Simple/t/Test2/modules/Util.t<br/> cpan/Test-Simple/t/Test2/modules/Util/ExternalMeta.t<br/> cpan/Test-Simple/t/Test2/modules/Util/HashBase.t<br/>-cpan/Test-Simple/t/Test2/modules/Util.t<br/> cpan/Test-Simple/t/Test2/modules/Util/Trace.t<br/> cpan/Test-Simple/t/Test2/regression/gh_16.t<br/> cpan/Test-Simple/t/Test2/regression/ipc_files_abort_exit.t<br/>@@ -2768,16 +2769,16 @@ cpan/Text-Tabs/t/79766.t See if Text::Tabs is working<br/> cpan/Text-Tabs/t/belg4mit.t See if Text::Tabs is working<br/> cpan/Text-Tabs/t/dandv.t See if Text::Tabs is working<br/> cpan/Text-Tabs/t/fill.t See if Text::Wrap::fill works<br/>-cpan/Text-Tabs/t/Jacobson2.t See if Text::Tabs is working<br/> cpan/Text-Tabs/t/Jacobson.t See if Text::Tabs is working<br/>+cpan/Text-Tabs/t/Jacobson2.t See if Text::Tabs is working<br/> cpan/Text-Tabs/t/Jochen.t See if Text::Tabs is working<br/>-cpan/Text-Tabs/t/sep2.t See if Text::Tabs is working<br/> cpan/Text-Tabs/t/sep.t See if Text::Tabs is working<br/>-cpan/Text-Tabs/t/Tabs-ElCid.t See if Text::Tabs works<br/>+cpan/Text-Tabs/t/sep2.t See if Text::Tabs is working<br/> cpan/Text-Tabs/t/tabs.t See if Text::Tabs works<br/>+cpan/Text-Tabs/t/Tabs-ElCid.t See if Text::Tabs works<br/>+cpan/Text-Tabs/t/wrap.t See if Text::Wrap::wrap works<br/> cpan/Text-Tabs/t/Wrap-JLB.t See if Text::Wrap::wrap works<br/> cpan/Text-Tabs/t/wrap_separator2.t See if Text::Wrap::wrap works<br/>-cpan/Text-Tabs/t/wrap.t See if Text::Wrap::wrap works<br/> cpan/Tie-RefHash/lib/Tie/RefHash.pm Base class for tied hashes with references as keys<br/> cpan/Tie-RefHash/t/rebless.t Test for Tie::RefHash with rebless<br/> cpan/Tie-RefHash/t/refhash.t Test for Tie::RefHash and Tie::RefHash::Nestable<br/>@@ -2789,14 +2790,16 @@ cpan/Time-Piece/Piece.pm Time::Piece extension<br/> cpan/Time-Piece/Piece.xs Time::Piece extension<br/> cpan/Time-Piece/Seconds.pm Time::Piece extension<br/> cpan/Time-Piece/t/01base.t Test for Time::Piece<br/>-cpan/Time-Piece/t/02core_dst.t<br/> cpan/Time-Piece/t/02core.t Test for Time::Piece<br/>+cpan/Time-Piece/t/02core_dst.t<br/> cpan/Time-Piece/t/03compare.t Test for Time::Piece<br/> cpan/Time-Piece/t/04mjd.t Test for Time::Piece<br/> cpan/Time-Piece/t/05overload.t Test for Time::Piece<br/> cpan/Time-Piece/t/06subclass.t Test for Time::Piece<br/> cpan/Time-Piece/t/07arith.t Test for Time::Piece<br/> cpan/Time-Piece/t/lib/Time/Piece/Twin.pm<br/>+cpan/Unicode-Collate/Collate.pm Unicode::Collate<br/>+cpan/Unicode-Collate/Collate.xs Unicode::Collate<br/> cpan/Unicode-Collate/Collate/allkeys.txt Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/Big5.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/GB2312.pm Unicode::Collate<br/>@@ -2806,6 +2809,7 @@ cpan/Unicode-Collate/Collate/CJK/Pinyin.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/Stroke.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/Zhuyin.pm<br/> cpan/Unicode-Collate/Collate/keys.txt Unicode::Collate<br/>+cpan/Unicode-Collate/Collate/Locale.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/af.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/ar.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/as.pl Unicode::Collate<br/>@@ -2824,9 +2828,9 @@ cpan/Unicode-Collate/Collate/Locale/es.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/es_trad.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/et.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/fa.pl Unicode::Collate<br/>-cpan/Unicode-Collate/Collate/Locale/fil.pl Unicode::Collate<br/>-cpan/Unicode-Collate/Collate/Locale/fi_phone.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/fi.pl Unicode::Collate<br/>+cpan/Unicode-Collate/Collate/Locale/fi_phone.pl Unicode::Collate<br/>+cpan/Unicode-Collate/Collate/Locale/fil.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/fo.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/fr.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/gu.pl Unicode::Collate<br/>@@ -2842,8 +2846,8 @@ cpan/Unicode-Collate/Collate/Locale/ja.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/kk.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/kl.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/kn.pl Unicode::Collate<br/>-cpan/Unicode-Collate/Collate/Locale/kok.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/ko.pl Unicode::Collate<br/>+cpan/Unicode-Collate/Collate/Locale/kok.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/ln.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/lt.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/lv.pl Unicode::Collate<br/>@@ -2858,13 +2862,12 @@ cpan/Unicode-Collate/Collate/Locale/om.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/or.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/pa.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/pl.pl Unicode::Collate<br/>-cpan/Unicode-Collate/Collate/Locale.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/ro.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/ru.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/sa.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/se.pl Unicode::Collate<br/>-cpan/Unicode-Collate/Collate/Locale/si_dict.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/si.pl Unicode::Collate<br/>+cpan/Unicode-Collate/Collate/Locale/si_dict.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/sk.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/sl.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/sq.pl Unicode::Collate<br/>@@ -2883,14 +2886,12 @@ cpan/Unicode-Collate/Collate/Locale/vi.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/wae.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/wo.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/yo.pl Unicode::Collate<br/>+cpan/Unicode-Collate/Collate/Locale/zh.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_big5.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_gb.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_pin.pl Unicode::Collate<br/>-cpan/Unicode-Collate/Collate/Locale/zh.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_strk.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_zhu.pl<br/>-cpan/Unicode-Collate/Collate.pm Unicode::Collate<br/>-cpan/Unicode-Collate/Collate.xs Unicode::Collate<br/> cpan/Unicode-Collate/Makefile.PL Unicode::Collate<br/> cpan/Unicode-Collate/mkheader Unicode::Collate<br/> cpan/Unicode-Collate/t/altern.t Unicode::Collate<br/>@@ -2900,9 +2901,9 @@ cpan/Unicode-Collate/t/cjk_gb.t Unicode::Collate<br/> cpan/Unicode-Collate/t/cjk_ja.t Unicode::Collate<br/> cpan/Unicode-Collate/t/cjk_ko.t Unicode::Collate<br/> cpan/Unicode-Collate/t/cjk_py.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/cjkrange.t Unicode::Collate<br/> cpan/Unicode-Collate/t/cjk_st.t Unicode::Collate<br/> cpan/Unicode-Collate/t/cjk_zy.t<br/>+cpan/Unicode-Collate/t/cjkrange.t Unicode::Collate<br/> cpan/Unicode-Collate/t/compatui.t Unicode::Collate<br/> cpan/Unicode-Collate/t/contract.t Unicode::Collate<br/> cpan/Unicode-Collate/t/default.t Unicode::Collate<br/>@@ -2911,8 +2912,8 @@ cpan/Unicode-Collate/t/hangul.t Unicode::Collate<br/> cpan/Unicode-Collate/t/ident.t<br/> cpan/Unicode-Collate/t/iglevel2.t Unicode::Collate<br/> cpan/Unicode-Collate/t/ignor.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/illegalp.t Unicode::Collate<br/> cpan/Unicode-Collate/t/illegal.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/illegalp.t Unicode::Collate<br/> cpan/Unicode-Collate/t/index.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_af.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_ar.t Unicode::Collate<br/>@@ -2921,26 +2922,26 @@ cpan/Unicode-Collate/t/loc_az.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_be.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_bg.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_bn.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_bscy.t<br/> cpan/Unicode-Collate/t/loc_bs.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_bscy.t<br/> cpan/Unicode-Collate/t/loc_ca.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_cjkc.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_cjk.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_cjkc.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_cs.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_cyrl.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_cy.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_cyrl.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_da.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_deph.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_de.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_deph.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_ee.t<br/> cpan/Unicode-Collate/t/loc_eo.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_es.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_estr.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_et.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_fa.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_fi.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_fil.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_fiph.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_fi.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_fo.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_fr.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_gu.t Unicode::Collate<br/>@@ -2952,14 +2953,14 @@ cpan/Unicode-Collate/t/loc_hu.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_hy.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_ig.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_is.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_ja.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_jait.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_japr.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_ja.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_kk.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_kl.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_kn.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_kok.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_ko.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_kok.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_ln.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_lt.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_lv.t Unicode::Collate<br/>@@ -2978,19 +2979,19 @@ cpan/Unicode-Collate/t/loc_ro.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_ru.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_sa.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_se.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_sidt.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_si.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_sidt.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_sk.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_sl.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_sq.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_srla.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_sr.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_svrf.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_srla.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_sv.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_svrf.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_sw.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_ta.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_test.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_te.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_test.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_th.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_tn.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_to.t Unicode::Collate<br/>@@ -3001,11 +3002,11 @@ cpan/Unicode-Collate/t/loc_vi.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_wae.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_wo.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_yo.t Unicode::Collate<br/>+cpan/Unicode-Collate/t/loc_zh.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_zhb5.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_zhgb.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_zhpy.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_zhst.t Unicode::Collate<br/>-cpan/Unicode-Collate/t/loc_zh.t Unicode::Collate<br/> cpan/Unicode-Collate/t/loc_zhzy.t<br/> cpan/Unicode-Collate/t/nonchar.t Unicode::Collate<br/> cpan/Unicode-Collate/t/normal.t Unicode::Collate<br/>@@ -3036,9 +3037,9 @@ cpan/Unicode-Normalize/t/proto.t Unicode::Normalize<br/> cpan/Unicode-Normalize/t/split.t Unicode::Normalize<br/> cpan/Unicode-Normalize/t/test.t Unicode::Normalize<br/> cpan/Unicode-Normalize/t/tie.t Unicode::Normalize<br/>-cpan/version/lib/version/Internals.pod Description of the internals of version objects<br/> cpan/version/lib/version.pm Support for version objects<br/> cpan/version/lib/version.pod Documentation of the version module<br/>+cpan/version/lib/version/Internals.pod Description of the internals of version objects<br/> cpan/version/lib/version/regex.pm Regex for matching version objects<br/> cpan/version/t/01base.t Tests for version objects<br/> cpan/version/t/02derived.t Tests for version objects<br/>@@ -3051,17 +3052,6 @@ cpan/version/t/08_corelist.t Tests for version objects<br/> cpan/version/t/09_list_util.t Tests for version objects<br/> cpan/version/t/10_lyon.t Tests for version objects<br/> cpan/version/t/coretests.pm Tests for version objects<br/>-cpan/Win32API-File/buffers.h Win32API::File extension<br/>-cpan/Win32API-File/cFile.h Win32API::File extension<br/>-cpan/Win32API-File/cFile.pc Win32API::File extension<br/>-cpan/Win32API-File/const2perl.h Win32API::File extension<br/>-cpan/Win32API-File/File.pm Win32API::File extension<br/>-cpan/Win32API-File/File.xs Win32API::File extension<br/>-cpan/Win32API-File/inc/ExtUtils/Myconst2perl.pm Win32API::File extension<br/>-cpan/Win32API-File/Makefile.PL Win32API::File extension makefile write<br/>-cpan/Win32API-File/t/file.t See if Win32API::File extension works<br/>-cpan/Win32API-File/t/tie.t See if Win32API::File extension works<br/>-cpan/Win32API-File/typemap Win32API::File extension interface types<br/> cpan/Win32/longpath.inc Win32 extension long path support<br/> cpan/Win32/Makefile.PL Win32 extension makefile writer<br/> cpan/Win32/t/CodePage.t See if Win32 extension works<br/>@@ -3080,6 +3070,17 @@ cpan/Win32/t/Names.t See if Win32 extension works<br/> cpan/Win32/t/Unicode.t See if Win32 extension works<br/> cpan/Win32/Win32.pm Win32 extension Perl module<br/> cpan/Win32/Win32.xs Win32 extension external subroutines<br/>+cpan/Win32API-File/buffers.h Win32API::File extension<br/>+cpan/Win32API-File/cFile.h Win32API::File extension<br/>+cpan/Win32API-File/cFile.pc Win32API::File extension<br/>+cpan/Win32API-File/const2perl.h Win32API::File extension<br/>+cpan/Win32API-File/File.pm Win32API::File extension<br/>+cpan/Win32API-File/File.xs Win32API::File extension<br/>+cpan/Win32API-File/inc/ExtUtils/Myconst2perl.pm Win32API::File extension<br/>**** PATCH TRUNCATED AT 2000 LINES -- 2695 NOT SHOWN ****<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47489.html Thu, 23 Jun 2016 10:21:33 +0000 [perl.git] branch smoke-me/ap/tiehashomega, created.v5.25.2-26-g03a92b8 by Aristotle Pagaltzis In perl.git, the branch smoke-me/ap/tiehashomega has been created<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/03a92b88080eeb5464e010ec44461709044d344d?hp=0000000000000000000000000000000000000000&gt;<br/><br/> at 03a92b88080eeb5464e010ec44461709044d344d (commit)<br/><br/>- Log -----------------------------------------------------------------<br/>commit 03a92b88080eeb5464e010ec44461709044d344d<br/>Author: Aristotle Pagaltzis &lt;pagaltzis@gmx.de&gt;<br/>Date: Wed Jun 22 23:12:56 2016 +0200<br/><br/> Module::CoreList: cut TieHashDelta out of everybody&acirc;&#128;&#153;s life<br/>-----------------------------------------------------------------------<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47488.html Wed, 22 Jun 2016 21:13:39 +0000 [perl.git] branch smoke-me/no_xhv_fill_2, created.v5.25.2-29-g3dfcef7 by Yves Orton In perl.git, the branch smoke-me/no_xhv_fill_2 has been created<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236?hp=0000000000000000000000000000000000000000&gt;<br/><br/> at 3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236 (commit)<br/><br/>- Log -----------------------------------------------------------------<br/>commit 3dfcef7e97bf1b516f2ff2b33a39a1fd2d816236<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Tue Jun 21 09:07:48 2016 +0200<br/><br/> change manisort to produce a more intuitive order<br/> <br/> Dictionary sort order on filenames is very counter-intuitive, and<br/> produces surprising sort orders.<br/> <br/> What this patch does is sort things so that the following should<br/> always be true:<br/> <br/> 1. Case insensitive textual order<br/> Eg: Foo and foo and FOO should sort together in ascibetical order<br/> <br/> 2. Shorter dirs go before longer dirs with a common prefix<br/> Eg: lib/Foo/ should go before lib/Foo-Thing/<br/> <br/> 3. Base filename goes before dir of the same name<br/> Eg: lib/Foo.pm should sort before lib/Foo/Bar.pm<br/> <br/> This also refactors the MANIFEST sort code in Porting/manisort and<br/> Porting/pod_rules.pm files into Porting/pod_lib.pl<br/><br/>M MANIFEST<br/>M Porting/manisort<br/>M Porting/pod_lib.pl<br/>M Porting/pod_rules.pl<br/><br/>commit 8bf4c4010cc474d4000c2a8c78f6890fa5f1e577<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:51:38 2016 +0200<br/><br/> Change scalar(%hash) to be the same as 0+keys(%hash)<br/> <br/> This subject has a long history see [perl #114576] for more discussion.<br/> https://rt.perl.org/Public/Bug/Display.html?id=114576<br/> <br/> There are a variety of reasons we want to change the return signature of<br/> scalar(%hash). One is that it leaks implementation details about our<br/> associative array structure. Another is that it requires us to keep track<br/> of the used buckets in the hash, which we use for no other purpose but<br/> for scalar(%hash). Another is that it is just odd. Almost nothing needs to<br/> know these values. Perhaps debugging, but we have several much better<br/> functions for introspecting the internals of a hash.<br/> <br/> By changing the return signature we can remove all the logic related<br/> to maintaining and updating xhv_fill_lazy. This should make hot code<br/> paths a little faster, and maybe save some memory for traversed hashes.<br/> <br/> In order to provide some form of backwards compatibility we adds three<br/> new functions to the Hash::Util namespace: bucket_ratio(), num_buckets()<br/> and used_buckets(). These functions are actually implemented in<br/> universal.c, and thus always available even if Hash::Util is not loaded.<br/> This simplifies testing. At the same time Hash::Util contains backwards<br/> compatible code so that the new functions are available from it should<br/> they be needed in older perls.<br/> <br/> There are many tests in t/op/hash.t that are more or less obsolete after<br/> this patch as they test that xhv_fill_lazy is correctly set in various<br/> situations. However since we have a backwards compat layer we can just<br/> switch them to use bucket_ratio(%hash) instead of scalar(%hash) and keep<br/> the tests, just in case they are actually testing something not tested<br/> elsewhere.<br/><br/>M MANIFEST<br/>M dump.c<br/>M embed.fnc<br/>M embed.h<br/>M ext/Devel-Peek/t/Peek.t<br/>M ext/Hash-Util-FieldHash/t/05_perlhook.t<br/>M ext/Hash-Util/Changes<br/>M ext/Hash-Util/Util.xs<br/>M ext/Hash-Util/lib/Hash/Util.pm<br/>A ext/Hash-Util/t/builtin.t<br/>M hv.c<br/>M hv.h<br/>M pod/perldata.pod<br/>M pod/perldelta.pod<br/>M pod/perltie.pod<br/>M proto.h<br/>M sv.c<br/>M t/op/coreamp.t<br/>M t/op/each.t<br/>M t/op/hash.t<br/>M t/op/sub_lval.t<br/>M universal.c<br/><br/>commit 6c50b67b99a3df9486896d14dc294825a148a673<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:43:40 2016 +0200<br/><br/> Add a perldelta entry for recursive subpattern screwup in 5.24<br/><br/>M pod/perldelta.pod<br/><br/>commit 13e1fc6ad5f61be7a02b000114901d1d850e988f<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:43:11 2016 +0200<br/><br/> Add perldelta for POSIX memory leak fix<br/><br/>M pod/perldelta.pod<br/>-----------------------------------------------------------------------<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47487.html Wed, 22 Jun 2016 16:33:56 +0000 [perl.git] branch smoke-me/no_xhv_fill, updated.v5.25.2-26-g567c6c2 by Yves Orton In perl.git, the branch smoke-me/no_xhv_fill has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/567c6c2f1697ee1c4d3250569733fc50a61f5c31?hp=9952e8720801354d6b34da600a3d152d3b450e46&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 567c6c2f1697ee1c4d3250569733fc50a61f5c31<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Wed Jun 22 18:20:09 2016 +0200<br/><br/> refactor manifest logic<br/><br/>M Porting/manisort<br/>M Porting/pod_lib.pl<br/>M Porting/pod_rules.pl<br/><br/>commit 37335a1fb9c010218a9f539d7ca82926c6bf8b07<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Wed Jun 22 18:04:27 2016 +0200<br/><br/> fixup manifest sort code<br/><br/>M MANIFEST<br/>M Porting/manisort<br/>M Porting/pod_rules.pl<br/><br/>commit 4cb8c8ab2e6330587f42fd807173fbe7181f2d19<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Wed Jun 22 18:04:07 2016 +0200<br/><br/> fixup link<br/><br/>M pod/perltie.pod<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> MANIFEST | 216 +++++++++++++++++++++++++--------------------------<br/> Porting/manisort | 24 ++----<br/> Porting/pod_lib.pl | 29 +++++++<br/> Porting/pod_rules.pl | 20 +++--<br/> pod/perltie.pod | 2 +-<br/> 5 files changed, 152 insertions(+), 139 deletions(-)<br/><br/>diff --git a/MANIFEST b/MANIFEST<br/>index f1dced2..027060e 100644<br/>--- a/MANIFEST<br/>+++ b/MANIFEST<br/>@@ -25,9 +25,9 @@ cpan/.dir-locals.el Emacs control file<br/> cpan/Archive-Tar/bin/ptar the ptar utility<br/> cpan/Archive-Tar/bin/ptardiff the ptardiff utility<br/> cpan/Archive-Tar/bin/ptargrep the ptardiff utility<br/>+cpan/Archive-Tar/lib/Archive/Tar.pm Archive::Tar<br/> cpan/Archive-Tar/lib/Archive/Tar/Constant.pm Archive::Tar<br/> cpan/Archive-Tar/lib/Archive/Tar/File.pm Archive::Tar<br/>-cpan/Archive-Tar/lib/Archive/Tar.pm Archive::Tar<br/> cpan/Archive-Tar/t/01_use.t Archive::Tar tests<br/> cpan/Archive-Tar/t/02_methods.t Archive::Tar tests<br/> cpan/Archive-Tar/t/03_file.t Archive::Tar tests<br/>@@ -49,14 +49,14 @@ cpan/Archive-Tar/t/src/short/b Archive::Tar tests<br/> cpan/Archive-Tar/t/src/short/bar.tar Archive::Tar tests<br/> cpan/Archive-Tar/t/src/short/foo.tbz Archive::Tar tests<br/> cpan/Archive-Tar/t/src/short/foo.tgz Archive::Tar tests<br/>-cpan/autodie/lib/autodie/exception/system.pm Exception class for autodying system()<br/>+cpan/autodie/lib/autodie.pm Functions succeed or die with lexical scope<br/> cpan/autodie/lib/autodie/exception.pm Exception class for autodie<br/>+cpan/autodie/lib/autodie/exception/system.pm Exception class for autodying system()<br/> cpan/autodie/lib/autodie/hints.pm Hinting interface for autodie<br/> cpan/autodie/lib/autodie/Scope/Guard.pm<br/> cpan/autodie/lib/autodie/Scope/GuardStack.pm<br/> cpan/autodie/lib/autodie/skip.pm<br/> cpan/autodie/lib/autodie/Util.pm<br/>-cpan/autodie/lib/autodie.pm Functions succeed or die with lexical scope<br/> cpan/autodie/lib/Fatal.pm Make errors in functions/builtins fatal<br/> cpan/autodie/t/00-load.t autodie - basic load<br/> cpan/autodie/t/args.t<br/>@@ -95,8 +95,8 @@ cpan/autodie/t/internal.t autodie - internal interface tests<br/> cpan/autodie/t/internal-backcompat.t autodie - Back-compatibility tests<br/> cpan/autodie/t/kill.t<br/> cpan/autodie/t/lethal.t autodie - lethal is the one true name<br/>-cpan/autodie/t/lib/autodie/test/au/exception.pm autodie - Australian helper<br/> cpan/autodie/t/lib/autodie/test/au.pm autodie - Australian helper<br/>+cpan/autodie/t/lib/autodie/test/au/exception.pm autodie - Australian helper<br/> cpan/autodie/t/lib/autodie/test/badname.pm autodie - Bad exception class<br/> cpan/autodie/t/lib/autodie/test/missing.pm autodie - Missing exception class<br/> cpan/autodie/t/lib/Caller_helper.pm autodie - Caller helper<br/>@@ -109,8 +109,8 @@ cpan/autodie/t/lib/lethal.pm autodie - with a better name<br/> cpan/autodie/t/lib/my/autodie.pm autodie - blog_hints.t helper<br/> cpan/autodie/t/lib/my/pragma.pm<br/> cpan/autodie/t/lib/OtherTypes.pm autodie - Format clobberer helper.<br/>-cpan/autodie/t/lib/pujHa/ghach/Dotlh.pm autodie - With Klingon honour<br/> cpan/autodie/t/lib/pujHa/ghach.pm autodie - Like a Klingon<br/>+cpan/autodie/t/lib/pujHa/ghach/Dotlh.pm autodie - With Klingon honour<br/> cpan/autodie/t/lib/Some/Module.pm autodie - blog_hints.t helper<br/> cpan/autodie/t/mkdir.t autodie - filesystem tests<br/> cpan/autodie/t/no_carp.t<br/>@@ -243,6 +243,7 @@ cpan/Config-Perl-V/t/29_plv5235w.t Config::Perl::V<br/> cpan/Config-Perl-V/t/30_plv5240.t Config::Perl::V<br/> cpan/Config-Perl-V/V.pm Config::Perl::V<br/> cpan/CPAN/lib/App/Cpan.pm helper package for CPAN.pm<br/>+cpan/CPAN/lib/CPAN.pm Interface to Comprehensive Perl Archive Network<br/> cpan/CPAN/lib/CPAN/API/HOWTO.pod recipe book for programming with CPAN.pm<br/> cpan/CPAN/lib/CPAN/Author.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Bundle.pm helper package for CPAN.pm<br/>@@ -258,29 +259,28 @@ cpan/CPAN/lib/CPAN/Exception/RecursiveDependency.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Exception/yaml_not_installed.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Exception/yaml_process_error.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/FirstTime.pm Utility for creating CPAN config files<br/>-cpan/CPAN/lib/CPAN/FTP/netrc.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/FTP.pm helper package for CPAN.pm<br/>+cpan/CPAN/lib/CPAN/FTP/netrc.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/HandleConfig.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/HTTP/Client.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/HTTP/Credentials.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Index.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/InfoObj.pm helper package for CPAN.pm<br/>+cpan/CPAN/lib/CPAN/Kwalify.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Kwalify/distroprefs.dd helper file for validating config files<br/> cpan/CPAN/lib/CPAN/Kwalify/distroprefs.yml helper file for validating config files<br/>-cpan/CPAN/lib/CPAN/Kwalify.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/LWP/UserAgent.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Mirrors.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Module.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Nox.pm Runs CPAN while avoiding compiled extensions<br/>-cpan/CPAN/lib/CPAN/Plugin/Specfile.pm<br/> cpan/CPAN/lib/CPAN/Plugin.pm<br/>+cpan/CPAN/lib/CPAN/Plugin/Specfile.pm<br/> cpan/CPAN/lib/CPAN/Prompt.pm<br/> cpan/CPAN/lib/CPAN/Queue.pm queueing system for CPAN.pm<br/> cpan/CPAN/lib/CPAN/Shell.pm<br/> cpan/CPAN/lib/CPAN/Tarzip.pm helper package for CPAN.pm<br/> cpan/CPAN/lib/CPAN/URL.pm<br/> cpan/CPAN/lib/CPAN/Version.pm Simple math with different flavors of version strings<br/>-cpan/CPAN/lib/CPAN.pm Interface to Comprehensive Perl Archive Network<br/> cpan/CPAN/PAUSE2003.pub CPAN public key<br/> cpan/CPAN/PAUSE2005.pub CPAN public key<br/> cpan/CPAN/PAUSE2007.pub CPAN public key<br/>@@ -292,19 +292,19 @@ cpan/CPAN/t/02nox.t See if CPAN::Nox works<br/> cpan/CPAN/t/03pkgs.t See if CPAN::Version works<br/> cpan/CPAN/t/10version.t See if CPAN the module works<br/> cpan/CPAN/t/11mirroredby.t See if CPAN::Mirrored::By works<br/>+cpan/CPAN-Meta/lib/CPAN/Meta.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm<br/>+cpan/CPAN-Meta/lib/CPAN/Meta/History.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_0.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_1.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_2.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_3.pod<br/> cpan/CPAN-Meta/lib/CPAN/Meta/History/Meta_1_4.pod<br/>-cpan/CPAN-Meta/lib/CPAN/Meta/History.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Merge.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm<br/> cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm<br/>-cpan/CPAN-Meta/lib/CPAN/Meta.pm<br/> cpan/CPAN-Meta/t/converter.t<br/> cpan/CPAN-Meta/t/converter-bad.t<br/> cpan/CPAN-Meta/t/converter-fail.t<br/>@@ -809,9 +809,9 @@ cpan/Devel-PPPort/t/uv.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/variables.t Devel::PPPort test file<br/> cpan/Devel-PPPort/t/warn.t Devel::PPPort test file<br/> cpan/Devel-PPPort/typemap Devel::PPPort Typemap<br/>+cpan/Digest/Digest.pm Digest extensions<br/> cpan/Digest/Digest/base.pm Digest extensions<br/> cpan/Digest/Digest/file.pm Digest extensions<br/>-cpan/Digest/Digest.pm Digest extensions<br/> cpan/Digest/t/base.t See if Digest extensions work<br/> cpan/Digest/t/digest.t See if Digest extensions work<br/> cpan/Digest/t/file.t See if Digest extensions work<br/>@@ -879,6 +879,8 @@ cpan/Encode/CN/Makefile.PL Encode extension<br/> cpan/Encode/EBCDIC/EBCDIC.pm Encode extension<br/> cpan/Encode/EBCDIC/Makefile.PL Encode extension<br/> cpan/Encode/encengine.c Encode extension<br/>+cpan/Encode/Encode.pm Mother of all Encode extensions<br/>+cpan/Encode/Encode.xs Encode extension<br/> cpan/Encode/Encode/_PM.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/_T.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/Changes.e2x Skeleton file for enc2xs<br/>@@ -886,8 +888,6 @@ cpan/Encode/Encode/ConfigLocal_PM.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/encode.h Encode extension header file<br/> cpan/Encode/Encode/Makefile_PL.e2x Skeleton file for enc2xs<br/> cpan/Encode/Encode/README.e2x Skeleton file for enc2xs<br/>-cpan/Encode/Encode.pm Mother of all Encode extensions<br/>-cpan/Encode/Encode.xs Encode extension<br/> cpan/Encode/encoding.pm Perl Pragmatic Module<br/> cpan/Encode/JP/JP.pm Encode extension<br/> cpan/Encode/JP/Makefile.PL Encode extension<br/>@@ -904,8 +904,8 @@ cpan/Encode/lib/Encode/Guess.pm Encode Extension<br/> cpan/Encode/lib/Encode/JP/H2Z.pm Encode extension<br/> cpan/Encode/lib/Encode/JP/JIS7.pm Encode extension<br/> cpan/Encode/lib/Encode/KR/2022_KR.pm Encode extension<br/>-cpan/Encode/lib/Encode/MIME/Header/ISO_2022_JP.pm Encode extension<br/> cpan/Encode/lib/Encode/MIME/Header.pm Encode extension<br/>+cpan/Encode/lib/Encode/MIME/Header/ISO_2022_JP.pm Encode extension<br/> cpan/Encode/lib/Encode/MIME/Name.pm Encode extension<br/> cpan/Encode/lib/Encode/PerlIO.pod Documents for Encode &amp; PerlIO<br/> cpan/Encode/lib/Encode/Supported.pod Documents for supported encodings<br/>@@ -1073,11 +1073,11 @@ cpan/Encode/Unicode/Unicode.pm Encode extension<br/> cpan/Encode/Unicode/Unicode.xs Encode extension<br/> cpan/experimental/lib/experimental.pm<br/> cpan/experimental/t/basic.t<br/>+cpan/ExtUtils-Constant/lib/ExtUtils/Constant.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant/Base.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant/ProxySubs.pm generate XS code for proxy constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant/Utils.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/lib/ExtUtils/Constant/XS.pm generate XS code to import C header constants<br/>-cpan/ExtUtils-Constant/lib/ExtUtils/Constant.pm generate XS code to import C header constants<br/> cpan/ExtUtils-Constant/t/Constant.t See if ExtUtils::Constant works<br/> cpan/ExtUtils-Install/lib/ExtUtils/Install.pm Handles &#39;make install&#39; on extensions<br/> cpan/ExtUtils-Install/lib/ExtUtils/Installed.pm Information on installed extensions<br/>@@ -1092,17 +1092,17 @@ cpan/ExtUtils-Install/t/lib/MakeMaker/Test/Utils.pm MakeMaker test utilities<br/> cpan/ExtUtils-Install/t/lib/TieOut.pm Testing library to capture prints<br/> cpan/ExtUtils-Install/t/Packlist.t See if Packlist works<br/> cpan/ExtUtils-MakeMaker/bin/instmodsh Give information about installed extensions<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm Calling MM functions from the cmd line<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm Does the real work of the above<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm Calling MM functions from the cmd line<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm Locates libraries<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm Does the real work of the above<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm Write Makefiles for extensions<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm MakeMaker wrapper for Config<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod MakeMaker FAQ<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod Writing a module with MakeMaker<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm<br/>-cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm Write Makefiles for extensions<br/>+cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm Writes a bootstrap file (see MakeMaker)<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm Writes a linker options file for extensions<br/> cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm MakeMaker adaptor class<br/>@@ -1339,16 +1339,16 @@ cpan/IO-Compress/lib/File/GlobMapper.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Adapter/Bzip2.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Adapter/Deflate.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Adapter/Identity.pm IO::Compress<br/>-cpan/IO-Compress/lib/IO/Compress/Base/Common.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Base.pm IO::Compress<br/>+cpan/IO-Compress/lib/IO/Compress/Base/Common.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Bzip2.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Deflate.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/FAQ.pod IO::Compress<br/>-cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Gzip.pm IO::Compress<br/>+cpan/IO-Compress/lib/IO/Compress/Gzip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/RawDeflate.pm IO::Compress<br/>-cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Zip.pm IO::Compress<br/>+cpan/IO-Compress/lib/IO/Compress/Zip/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Zlib/Constants.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Compress/Zlib/Extra.pm IO::Compress<br/> cpan/IO-Compress/lib/IO/Uncompress/Adapter/Bunzip2.pm IO::Compress<br/>@@ -1520,8 +1520,8 @@ cpan/IPC-SysV/t/sem.t IPC::SysV test file<br/> cpan/IPC-SysV/t/shm.t IPC::SysV test file<br/> cpan/IPC-SysV/typemap IPC::SysV typemap<br/> cpan/JSON-PP/bin/json_pp<br/>-cpan/JSON-PP/lib/JSON/PP/Boolean.pm<br/> cpan/JSON-PP/lib/JSON/PP.pm<br/>+cpan/JSON-PP/lib/JSON/PP/Boolean.pm<br/> cpan/JSON-PP/t/000_load.t<br/> cpan/JSON-PP/t/001_utf8.t<br/> cpan/JSON-PP/t/002_error.t<br/>@@ -1561,12 +1561,12 @@ cpan/JSON-PP/t/zero-mojibake.t<br/> cpan/libnet/lib/Net/Cmd.pm<br/> cpan/libnet/lib/Net/Config.pm<br/> cpan/libnet/lib/Net/Domain.pm<br/>+cpan/libnet/lib/Net/FTP.pm<br/> cpan/libnet/lib/Net/FTP/A.pm<br/> cpan/libnet/lib/Net/FTP/dataconn.pm<br/> cpan/libnet/lib/Net/FTP/E.pm<br/> cpan/libnet/lib/Net/FTP/I.pm<br/> cpan/libnet/lib/Net/FTP/L.pm<br/>-cpan/libnet/lib/Net/FTP.pm<br/> cpan/libnet/lib/Net/libnetFAQ.pod<br/> cpan/libnet/lib/Net/Netrc.pm<br/> cpan/libnet/lib/Net/NNTP.pm<br/>@@ -1590,6 +1590,8 @@ cpan/libnet/t/smtp.t libnet<br/> cpan/libnet/t/smtp_ipv6.t<br/> cpan/libnet/t/smtp_ssl.t<br/> cpan/libnet/t/time.t libnet<br/>+cpan/Locale-Codes/lib/Locale/Codes.pm Locale::Codes<br/>+cpan/Locale-Codes/lib/Locale/Codes.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Codes/API.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Codes/Changes.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Codes/Constants.pm Locale::Codes<br/>@@ -1621,8 +1623,6 @@ cpan/Locale-Codes/lib/Locale/Codes/Script.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Script.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Codes/Script_Codes.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Codes/Script_Retired.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes.pm Locale::Codes<br/>-cpan/Locale-Codes/lib/Locale/Codes.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Country.pm Locale::Codes<br/> cpan/Locale-Codes/lib/Locale/Country.pod Locale::Codes documentation<br/> cpan/Locale-Codes/lib/Locale/Currency.pm Locale::Codes<br/>@@ -1662,9 +1662,9 @@ cpan/Locale-Maketext-Simple/t/po_with_i_default/i_default.po Locale::Simple test<br/> cpan/Locale-Maketext-Simple/t/po_without_i_default/en.po Locale::Simple tests<br/> cpan/Locale-Maketext-Simple/t/po_without_i_default/fr.po Locale::Simple tests<br/> cpan/Math-BigInt/lib/Math/BigFloat.pm An arbitrary precision floating-point arithmetic package<br/>+cpan/Math-BigInt/lib/Math/BigInt.pm An arbitrary precision integer arithmetic package<br/> cpan/Math-BigInt/lib/Math/BigInt/Calc.pm Pure Perl module to support Math::BigInt<br/> cpan/Math-BigInt/lib/Math/BigInt/CalcEmu.pm Pure Perl module to support Math::BigInt<br/>-cpan/Math-BigInt/lib/Math/BigInt.pm An arbitrary precision integer arithmetic package<br/> cpan/Math-BigInt/t/_e_math.t Helper routine in BigFloat for _e math<br/> cpan/Math-BigInt/t/alias.inc Support for BigInt tests<br/> cpan/Math-BigInt/t/bare_mbf.t Test MBF under Math::BigInt::BareCalc<br/>@@ -1752,6 +1752,7 @@ cpan/Math-Complex/lib/Math/Trig.pm A simple interface to complex trigonometry<br/> cpan/Math-Complex/t/Complex.t See if Math::Complex works<br/> cpan/Math-Complex/t/Trig.t See if Math::Trig works<br/> cpan/Math-Complex/t/underbar.t See if Math::Complex works<br/>+cpan/Memoize/Memoize.pm Memoize<br/> cpan/Memoize/Memoize/AnyDBM_File.pm Memoize glue layer for AnyDBM_File<br/> cpan/Memoize/Memoize/Expire.pm Memoize expiry manager example<br/> cpan/Memoize/Memoize/ExpireFile.pm Memoize expiry manager test scaffold<br/>@@ -1759,7 +1760,6 @@ cpan/Memoize/Memoize/ExpireTest.pm Memoize expiry manager test scaffold<br/> cpan/Memoize/Memoize/NDBM_File.pm Memoize glue layer for NDBM_File<br/> cpan/Memoize/Memoize/SDBM_File.pm Memoize glue layer for SDBM_File<br/> cpan/Memoize/Memoize/Storable.pm Memoize glue layer for Storable<br/>-cpan/Memoize/Memoize.pm Memoize<br/> cpan/Memoize/t/array.t Memoize array context return tests<br/> cpan/Memoize/t/array_confusion.t Memoize ambiguous array return tests<br/> cpan/Memoize/t/correctness.t Memoize basic correctness tests<br/>@@ -1839,8 +1839,8 @@ cpan/Params-Check/t/01_Params-Check.t Params::Check tests<br/> cpan/parent/lib/parent.pm Establish an ISA relationship with base classes at compile time<br/> cpan/parent/t/compile-time.t tests for parent.pm<br/> cpan/parent/t/compile-time-file.t tests for parent.pm<br/>-cpan/parent/t/lib/Dummy/Outside.pm test files for parent.pm<br/> cpan/parent/t/lib/Dummy.pm test files for parent.pm<br/>+cpan/parent/t/lib/Dummy/Outside.pm test files for parent.pm<br/> cpan/parent/t/lib/Dummy2.plugin test files for parent.pm<br/> cpan/parent/t/lib/FileThatOnlyExistsAsPMC.pmc test files for parent.pm<br/> cpan/parent/t/lib/ReturnsFalse.pm test files for parent.pm<br/>@@ -1938,6 +1938,7 @@ cpan/Pod-Parser/t/pod/twice.t Test Pod::Parser<br/> cpan/Pod-Perldoc/corpus/no-head.pod test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/corpus/perlfunc.pod test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/corpus/utf8.pod test file for Pod-Perldoc<br/>+cpan/Pod-Perldoc/lib/Pod/Perldoc.pm guts of the &#39;perldoc&#39; utility<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/BaseTo.pm utility module for perldoc<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/GetOptsOO.pm options parsing for perldoc<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/ToANSI.pm convert POD to ANSI text<br/>@@ -1950,12 +1951,13 @@ cpan/Pod-Perldoc/lib/Pod/Perldoc/ToTerm.pm convert POD to terminal output<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/ToText.pm convert POD to plain text<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/ToTk.pm convert POD via Tk::Pod<br/> cpan/Pod-Perldoc/lib/Pod/Perldoc/ToXml.pm convert POD to XML<br/>-cpan/Pod-Perldoc/lib/Pod/Perldoc.pm guts of the &#39;perldoc&#39; utility<br/> cpan/Pod-Perldoc/Makefile.PL<br/> cpan/Pod-Perldoc/perldoc.pod<br/> cpan/Pod-Perldoc/t/load.t test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/t/man/_get_columns.t test file for Pod-Perldoc<br/> cpan/Pod-Perldoc/t/pod.t test file for Pod-Perldoc<br/>+cpan/Pod-Simple/lib/Pod/Simple.pm Pod made simple<br/>+cpan/Pod-Simple/lib/Pod/Simple.pod Pod for Pod::Simple<br/> cpan/Pod-Simple/lib/Pod/Simple/BlackBox.pm Pod::Simple::BlackBox<br/> cpan/Pod-Simple/lib/Pod/Simple/Checker.pm check the Pod syntax of a document<br/> cpan/Pod-Simple/lib/Pod/Simple/Debug.pm put Pod::Simple into trace/debug mode<br/>@@ -1984,8 +1986,6 @@ cpan/Pod-Simple/lib/Pod/Simple/TranscodeDumb.pm Pod::Simple::TranscodeDumb<br/> cpan/Pod-Simple/lib/Pod/Simple/TranscodeSmart.pm Pod::Simple::TranscodeSmart<br/> cpan/Pod-Simple/lib/Pod/Simple/XHTML.pm turn Pod into XHTML<br/> cpan/Pod-Simple/lib/Pod/Simple/XMLOutStream.pm turn Pod into XML<br/>-cpan/Pod-Simple/lib/Pod/Simple.pm Pod made simple<br/>-cpan/Pod-Simple/lib/Pod/Simple.pod Pod for Pod::Simple<br/> cpan/Pod-Simple/t/00about.t Pod::Simple test file<br/> cpan/Pod-Simple/t/20_skip.t Pod::Simple test file<br/> cpan/Pod-Simple/t/ac_d.t Pod::Simple test file<br/>@@ -1997,6 +1997,7 @@ cpan/Pod-Simple/t/begin.t Pod::Simple test file<br/> cpan/Pod-Simple/t/cbacks.t Pod::Simple test file<br/> cpan/Pod-Simple/t/chunking.t Pod::Simple test file<br/> cpan/Pod-Simple/t/closeys.t Pod::Simple test file<br/>+cpan/Pod-Simple/t/corpus.t Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jp.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jp.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/2202jpx.txt Pod::Simple test file<br/>@@ -2057,7 +2058,6 @@ cpan/Pod-Simple/t/corpus/s2763_sjis.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/s2763_sjis.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/thai_iso11.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus/thai_iso11.xml Pod::Simple test file<br/>-cpan/Pod-Simple/t/corpus.t Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus2/fiqhakbar_iso6.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus2/fiqhakbar_iso6.xml Pod::Simple test file<br/> cpan/Pod-Simple/t/corpus2/polish_implicit_utf8.txt Pod::Simple test file<br/>@@ -2127,9 +2127,9 @@ cpan/Pod-Simple/t/testlib1/hinkhonk/readme.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/hinkhonk/Vliff.pm Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/pod/perlflif.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/pod/perlthng.pod Pod::Simple test file<br/>+cpan/Pod-Simple/t/testlib1/squaa.pm Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/squaa/Glunk.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/squaa/Vliff.pm Pod::Simple test file<br/>-cpan/Pod-Simple/t/testlib1/squaa.pm Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/zikzik.pod Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/Zonk/Fiddle.txt Pod::Simple test file<br/> cpan/Pod-Simple/t/testlib1/Zonk/Pronk.pm Pod::Simple test file<br/>@@ -2176,10 +2176,10 @@ cpan/Pod-Usage/t/pod/usage.pod<br/> cpan/Pod-Usage/t/pod/usage2.pod<br/> cpan/podlators/lib/Pod/Man.pm Convert POD data to *roff<br/> cpan/podlators/lib/Pod/ParseLink.pm Perl an L&lt;&gt; formatting code in POD text<br/>+cpan/podlators/lib/Pod/Text.pm Pod-Parser - convert POD data to formatted ASCII text<br/> cpan/podlators/lib/Pod/Text/Color.pm Convert POD data to color ASCII text<br/> cpan/podlators/lib/Pod/Text/Overstrike.pm Convert POD data to formatted overstrike text<br/> cpan/podlators/lib/Pod/Text/Termcap.pm Convert POD data to ASCII text with format escapes<br/>-cpan/podlators/lib/Pod/Text.pm Pod-Parser - convert POD data to formatted ASCII text<br/> cpan/podlators/Makefile.PL podlators Makefile.PL<br/> cpan/podlators/scripts/pod2man.PL Translator to turn pod into manpage<br/> cpan/podlators/scripts/pod2text.PL Translator to turn pod into text<br/>@@ -2203,9 +2203,9 @@ cpan/podlators/t/general/basic.t podlators test<br/> cpan/podlators/t/general/filehandle.t podlators test<br/> cpan/podlators/t/general/pod-parser.t podlators test<br/> cpan/podlators/t/lib/Test/Podlators.pm podlators test<br/>+cpan/podlators/t/lib/Test/RRA.pm podlators test<br/> cpan/podlators/t/lib/Test/RRA/Config.pm podlators test<br/> cpan/podlators/t/lib/Test/RRA/ModuleVersion.pm podlators test<br/>-cpan/podlators/t/lib/Test/RRA.pm podlators test<br/> cpan/podlators/t/man/basic.t podlators test<br/> cpan/podlators/t/man/devise-date.t podlators test<br/> cpan/podlators/t/man/devise-title.t podlators test<br/>@@ -2227,8 +2227,8 @@ cpan/podlators/t/text/overstrike.t podlators test<br/> cpan/podlators/t/text/perlio.t podlators test<br/> cpan/podlators/t/text/termcap.t podlators test<br/> cpan/podlators/t/text/utf8.t podlators test<br/>-cpan/Scalar-List-Utils/lib/List/Util/XS.pm List::Util<br/> cpan/Scalar-List-Utils/lib/List/Util.pm List::Util<br/>+cpan/Scalar-List-Utils/lib/List/Util/XS.pm List::Util<br/> cpan/Scalar-List-Utils/lib/Scalar/Util.pm Scalar::Util<br/> cpan/Scalar-List-Utils/lib/Sub/Util.pm<br/> cpan/Scalar-List-Utils/ListUtil.xs Util extension<br/>@@ -2291,8 +2291,8 @@ cpan/Sys-Syslog/win32/PerlLog_dll.uu Sys::Syslog extension Win32 related file<br/> cpan/Sys-Syslog/win32/PerlLog_RES.uu Sys::Syslog extension Win32 related file<br/> cpan/Sys-Syslog/win32/Win32.pm Sys::Syslog extension Win32 related file<br/> cpan/Term-ANSIColor/lib/Term/ANSIColor.pm<br/>-cpan/Term-ANSIColor/t/lib/Test/RRA/Config.pm<br/> cpan/Term-ANSIColor/t/lib/Test/RRA.pm<br/>+cpan/Term-ANSIColor/t/lib/Test/RRA/Config.pm<br/> cpan/Term-ANSIColor/t/module/aliases-func.t<br/> cpan/Term-ANSIColor/t/module/basic.t<br/> cpan/Term-ANSIColor/t/module/basic256.t<br/>@@ -2302,31 +2302,33 @@ cpan/Term-ANSIColor/t/taint/basic.t<br/> cpan/Term-Cap/Cap.pm Perl module supporting termcap usage<br/> cpan/Term-Cap/test.pl See if Term::Cap works<br/> cpan/Test-Harness/bin/prove The prove harness utility<br/>-cpan/Test-Harness/lib/App/Prove/State/Result/Test.pm Gubbins for the prove utility<br/>-cpan/Test-Harness/lib/App/Prove/State/Result.pm Gubbins for the prove utility<br/>-cpan/Test-Harness/lib/App/Prove/State.pm Gubbins for the prove utility<br/> cpan/Test-Harness/lib/App/Prove.pm Gubbins for the prove utility<br/>+cpan/Test-Harness/lib/App/Prove/State.pm Gubbins for the prove utility<br/>+cpan/Test-Harness/lib/App/Prove/State/Result.pm Gubbins for the prove utility<br/>+cpan/Test-Harness/lib/App/Prove/State/Result/Test.pm Gubbins for the prove utility<br/> cpan/Test-Harness/lib/TAP/Base.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Base.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Color.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Formatter/Console.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Console/ParallelSession.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Console/Session.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Formatter/Console.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Formatter/File/Session.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/File.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Formatter/File/Session.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Formatter/Session.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Harness.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Harness/Beyond.pod<br/> cpan/Test-Harness/lib/TAP/Harness/Env.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Harness.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Object.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Aggregator.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Grammar.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/Iterator.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Iterator/Array.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Iterator/Process.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Iterator/Stream.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/Iterator.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/IteratorFactory.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Multiplexer.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/Result.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Bailout.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Comment.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Plan.pm A parser for Test Anything Protocol<br/>@@ -2335,21 +2337,19 @@ cpan/Test-Harness/lib/TAP/Parser/Result/Test.pm A parser for Test Anything Prot<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Unknown.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/Version.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Result/YAML.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/Result.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/ResultFactory.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/Scheduler.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Scheduler/Job.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Scheduler/Spinner.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser/Scheduler.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/Source.pm A parser for Test Anything Protocol<br/>+cpan/Test-Harness/lib/TAP/Parser/SourceHandler.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Executable.pm<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/File.pm<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Handle.pm<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/Perl.pm<br/> cpan/Test-Harness/lib/TAP/Parser/SourceHandler/RawTAP.pm<br/>-cpan/Test-Harness/lib/TAP/Parser/SourceHandler.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/YAMLish/Reader.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/TAP/Parser/YAMLish/Writer.pm A parser for Test Anything Protocol<br/>-cpan/Test-Harness/lib/TAP/Parser.pm A parser for Test Anything Protocol<br/> cpan/Test-Harness/lib/Test/Harness.pm A test harness<br/> cpan/Test-Harness/t/aggregator.t Test::Harness test<br/> cpan/Test-Harness/t/bailout.t Test::Harness test<br/>@@ -2408,8 +2408,8 @@ cpan/Test-Harness/t/perl5lib.t Test::Harness test<br/> cpan/Test-Harness/t/premature-bailout.t Test::Harness test<br/> cpan/Test-Harness/t/process.t Test::Harness test<br/> cpan/Test-Harness/t/prove.t Test::Harness test<br/>-cpan/Test-Harness/t/proverc/emptyexec Test data for Test::Harness<br/> cpan/Test-Harness/t/proverc.t Test::Harness test<br/>+cpan/Test-Harness/t/proverc/emptyexec Test data for Test::Harness<br/> cpan/Test-Harness/t/proverun.t Test::Harness test<br/> cpan/Test-Harness/t/proveversion.t Test::Harness test<br/> cpan/Test-Harness/t/regression.t Test::Harness test<br/>@@ -2501,27 +2501,29 @@ cpan/Test-Harness/t/yamlish.t Test::Harness test<br/> cpan/Test-Harness/t/yamlish-output.t Test::Harness test<br/> cpan/Test-Harness/t/yamlish-writer.t Test::Harness test<br/> cpan/Test-Simple/lib/ok.pm<br/>+cpan/Test-Simple/lib/Test/Builder.pm<br/> cpan/Test-Simple/lib/Test/Builder/Formatter.pm<br/> cpan/Test-Simple/lib/Test/Builder/IO/Scalar.pm<br/> cpan/Test-Simple/lib/Test/Builder/Module.pm<br/>-cpan/Test-Simple/lib/Test/Builder/Tester/Color.pm<br/> cpan/Test-Simple/lib/Test/Builder/Tester.pm<br/>+cpan/Test-Simple/lib/Test/Builder/Tester/Color.pm<br/> cpan/Test-Simple/lib/Test/Builder/TodoDiag.pm<br/>-cpan/Test-Simple/lib/Test/Builder.pm<br/> cpan/Test-Simple/lib/Test/FAQ.pod<br/> cpan/Test-Simple/lib/Test/More.pm<br/> cpan/Test-Simple/lib/Test/Simple.pm<br/>+cpan/Test-Simple/lib/Test/Tester.pm<br/> cpan/Test-Simple/lib/Test/Tester/Capture.pm<br/> cpan/Test-Simple/lib/Test/Tester/CaptureRunner.pm<br/> cpan/Test-Simple/lib/Test/Tester/Delegate.pm<br/>-cpan/Test-Simple/lib/Test/Tester.pm<br/> cpan/Test-Simple/lib/Test/Tutorial.pod<br/> cpan/Test-Simple/lib/Test/use/ok.pm<br/>+cpan/Test-Simple/lib/Test2.pm<br/>+cpan/Test-Simple/lib/Test2/API.pm<br/> cpan/Test-Simple/lib/Test2/API/Breakage.pm<br/> cpan/Test-Simple/lib/Test2/API/Context.pm<br/> cpan/Test-Simple/lib/Test2/API/Instance.pm<br/> cpan/Test-Simple/lib/Test2/API/Stack.pm<br/>-cpan/Test-Simple/lib/Test2/API.pm<br/>+cpan/Test-Simple/lib/Test2/Event.pm<br/> cpan/Test-Simple/lib/Test2/Event/Bail.pm<br/> cpan/Test-Simple/lib/Test2/Event/Diag.pm<br/> cpan/Test-Simple/lib/Test2/Event/Exception.pm<br/>@@ -2532,22 +2534,20 @@ cpan/Test-Simple/lib/Test2/Event/Plan.pm<br/> cpan/Test-Simple/lib/Test2/Event/Skip.pm<br/> cpan/Test-Simple/lib/Test2/Event/Subtest.pm<br/> cpan/Test-Simple/lib/Test2/Event/Waiting.pm<br/>-cpan/Test-Simple/lib/Test2/Event.pm<br/>-cpan/Test-Simple/lib/Test2/Formatter/TAP.pm<br/> cpan/Test-Simple/lib/Test2/Formatter.pm<br/>-cpan/Test-Simple/lib/Test2/Hub/Interceptor/Terminator.pm<br/>+cpan/Test-Simple/lib/Test2/Formatter/TAP.pm<br/>+cpan/Test-Simple/lib/Test2/Hub.pm<br/> cpan/Test-Simple/lib/Test2/Hub/Interceptor.pm<br/>+cpan/Test-Simple/lib/Test2/Hub/Interceptor/Terminator.pm<br/> cpan/Test-Simple/lib/Test2/Hub/Subtest.pm<br/>-cpan/Test-Simple/lib/Test2/Hub.pm<br/>-cpan/Test-Simple/lib/Test2/IPC/Driver/Files.pm<br/>-cpan/Test-Simple/lib/Test2/IPC/Driver.pm<br/> cpan/Test-Simple/lib/Test2/IPC.pm<br/>+cpan/Test-Simple/lib/Test2/IPC/Driver.pm<br/>+cpan/Test-Simple/lib/Test2/IPC/Driver/Files.pm<br/> cpan/Test-Simple/lib/Test2/Transition.pod<br/>+cpan/Test-Simple/lib/Test2/Util.pm<br/> cpan/Test-Simple/lib/Test2/Util/ExternalMeta.pm<br/> cpan/Test-Simple/lib/Test2/Util/HashBase.pm<br/> cpan/Test-Simple/lib/Test2/Util/Trace.pm<br/>-cpan/Test-Simple/lib/Test2/Util.pm<br/>-cpan/Test-Simple/lib/Test2.pm<br/> cpan/Test-Simple/t/Legacy/00test_harness_check.t<br/> cpan/Test-Simple/t/Legacy/01-basic.t<br/> cpan/Test-Simple/t/Legacy/478-cmp_ok_hash.t<br/>@@ -2629,8 +2629,8 @@ cpan/Test-Simple/t/Legacy/plan_skip_all.t<br/> cpan/Test-Simple/t/Legacy/Regression/637.t<br/> cpan/Test-Simple/t/Legacy/require_ok.t<br/> cpan/Test-Simple/t/Legacy/run_test.t<br/>-cpan/Test-Simple/t/Legacy/Simple/load.t<br/> cpan/Test-Simple/t/Legacy/simple.t<br/>+cpan/Test-Simple/t/Legacy/Simple/load.t<br/> cpan/Test-Simple/t/Legacy/skip.t<br/> cpan/Test-Simple/t/Legacy/skipall.t<br/> cpan/Test-Simple/t/Legacy/strays.t<br/>@@ -2716,11 +2716,12 @@ cpan/Test-Simple/t/Test2/behavior/Subtest_events.t<br/> cpan/Test-Simple/t/Test2/behavior/Subtest_plan.t<br/> cpan/Test-Simple/t/Test2/behavior/Taint.t<br/> cpan/Test-Simple/t/Test2/legacy/TAP.t<br/>+cpan/Test-Simple/t/Test2/modules/API.t<br/> cpan/Test-Simple/t/Test2/modules/API/Breakage.t<br/> cpan/Test-Simple/t/Test2/modules/API/Context.t<br/> cpan/Test-Simple/t/Test2/modules/API/Instance.t<br/> cpan/Test-Simple/t/Test2/modules/API/Stack.t<br/>-cpan/Test-Simple/t/Test2/modules/API.t<br/>+cpan/Test-Simple/t/Test2/modules/Event.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Bail.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Diag.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Exception.t<br/>@@ -2731,19 +2732,18 @@ cpan/Test-Simple/t/Test2/modules/Event/Plan.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Skip.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Subtest.t<br/> cpan/Test-Simple/t/Test2/modules/Event/Waiting.t<br/>-cpan/Test-Simple/t/Test2/modules/Event.t<br/> cpan/Test-Simple/t/Test2/modules/Formatter/TAP.t<br/>-cpan/Test-Simple/t/Test2/modules/Hub/Interceptor/Terminator.t<br/>+cpan/Test-Simple/t/Test2/modules/Hub.t<br/> cpan/Test-Simple/t/Test2/modules/Hub/Interceptor.t<br/>+cpan/Test-Simple/t/Test2/modules/Hub/Interceptor/Terminator.t<br/> cpan/Test-Simple/t/Test2/modules/Hub/Subtest.t<br/>-cpan/Test-Simple/t/Test2/modules/Hub.t<br/>-cpan/Test-Simple/t/Test2/modules/IPC/Driver/Files.t<br/>-cpan/Test-Simple/t/Test2/modules/IPC/Driver.t<br/> cpan/Test-Simple/t/Test2/modules/IPC.t<br/>+cpan/Test-Simple/t/Test2/modules/IPC/Driver.t<br/>+cpan/Test-Simple/t/Test2/modules/IPC/Driver/Files.t<br/>+cpan/Test-Simple/t/Test2/modules/Util.t<br/> cpan/Test-Simple/t/Test2/modules/Util/ExternalMeta.t<br/> cpan/Test-Simple/t/Test2/modules/Util/HashBase.t<br/> cpan/Test-Simple/t/Test2/modules/Util/Trace.t<br/>-cpan/Test-Simple/t/Test2/modules/Util.t<br/> cpan/Test-Simple/t/Test2/regression/gh_16.t<br/> cpan/Test-Simple/t/Test2/regression/ipc_files_abort_exit.t<br/> cpan/Test-Simple/t/tools.pl<br/>@@ -2798,6 +2798,8 @@ cpan/Time-Piece/t/05overload.t Test for Time::Piece<br/> cpan/Time-Piece/t/06subclass.t Test for Time::Piece<br/> cpan/Time-Piece/t/07arith.t Test for Time::Piece<br/> cpan/Time-Piece/t/lib/Time/Piece/Twin.pm<br/>+cpan/Unicode-Collate/Collate.pm Unicode::Collate<br/>+cpan/Unicode-Collate/Collate.xs Unicode::Collate<br/> cpan/Unicode-Collate/Collate/allkeys.txt Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/Big5.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/GB2312.pm Unicode::Collate<br/>@@ -2807,6 +2809,7 @@ cpan/Unicode-Collate/Collate/CJK/Pinyin.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/Stroke.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/CJK/Zhuyin.pm<br/> cpan/Unicode-Collate/Collate/keys.txt Unicode::Collate<br/>+cpan/Unicode-Collate/Collate/Locale.pm Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/af.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/ar.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/as.pl Unicode::Collate<br/>@@ -2889,9 +2892,6 @@ cpan/Unicode-Collate/Collate/Locale/zh_gb.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_pin.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_strk.pl Unicode::Collate<br/> cpan/Unicode-Collate/Collate/Locale/zh_zhu.pl<br/>-cpan/Unicode-Collate/Collate/Locale.pm Unicode::Collate<br/>-cpan/Unicode-Collate/Collate.pm Unicode::Collate<br/>-cpan/Unicode-Collate/Collate.xs Unicode::Collate<br/> cpan/Unicode-Collate/Makefile.PL Unicode::Collate<br/> cpan/Unicode-Collate/mkheader Unicode::Collate<br/> cpan/Unicode-Collate/t/altern.t Unicode::Collate<br/>@@ -3037,10 +3037,10 @@ cpan/Unicode-Normalize/t/proto.t Unicode::Normalize<br/> cpan/Unicode-Normalize/t/split.t Unicode::Normalize<br/> cpan/Unicode-Normalize/t/test.t Unicode::Normalize<br/> cpan/Unicode-Normalize/t/tie.t Unicode::Normalize<br/>-cpan/version/lib/version/Internals.pod Description of the internals of version objects<br/>-cpan/version/lib/version/regex.pm Regex for matching version objects<br/> cpan/version/lib/version.pm Support for version objects<br/> cpan/version/lib/version.pod Documentation of the version module<br/>+cpan/version/lib/version/Internals.pod Description of the internals of version objects<br/>+cpan/version/lib/version/regex.pm Regex for matching version objects<br/> cpan/version/t/01base.t Tests for version objects<br/> cpan/version/t/02derived.t Tests for version objects<br/> cpan/version/t/03require.t Tests for version objects<br/>@@ -3089,8 +3089,8 @@ Cross/config.sh-arm-linux-n770 Cross-compilation<br/> Cross/generate_config_sh Cross-compilation<br/> Cross/installperl.patch Cross-compilation<br/> Cross/Makefile Cross-compilation<br/>-Cross/Makefile.SH.patch Cross-compilation<br/> Cross/Makefile-cross-SH Cross-compilation<br/>+Cross/Makefile.SH.patch Cross-compilation<br/> Cross/README Cross-compilation<br/> Cross/README.new Cross-compilation<br/> Cross/TODO Cross-compilation<br/>@@ -3143,8 +3143,8 @@ dist/base/t/sigdie.t See if base works with SIGDIE<br/> dist/base/t/version.t See if base works with versions<br/> dist/base/t/warnings.t See if base works with warnings<br/> dist/Carp/Changes Changelog for Carp&#39;s CPAN releases<br/>-dist/Carp/lib/Carp/Heavy.pm Error message retired workhorse<br/> dist/Carp/lib/Carp.pm Error message extension<br/>+dist/Carp/lib/Carp/Heavy.pm Error message retired workhorse<br/> dist/Carp/Makefile.PL makefile writer for Carp<br/> dist/Carp/README README for Carp&#39;s CPAN releases<br/> dist/Carp/t/arg_regexp.t See if Carp formats regexp args OK in stack traces<br/>@@ -3207,11 +3207,12 @@ dist/encoding-warnings/t/4-lexical.t tests for encoding::warnings<br/> dist/Env/lib/Env.pm Map environment into ordinary variables<br/> dist/Env/t/array.t See if Env works for arrays<br/> dist/Env/t/env.t See if Env works<br/>-dist/Exporter/lib/Exporter/Heavy.pm Complicated routines for Exporter<br/> dist/Exporter/lib/Exporter.pm Exporter base class<br/>+dist/Exporter/lib/Exporter/Heavy.pm Complicated routines for Exporter<br/> dist/Exporter/t/Exporter.t See if Exporter works<br/> dist/Exporter/t/warn.t See if Exporter respects warning handlers<br/> dist/ExtUtils-CBuilder/Changes EU-CB change log<br/>+dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder.pm Compile and link C code for Perl modules<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm Base class for ExtUtils::CBuilder methods<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/aix.pm CBuilder methods for AIX<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/android.pm CBuilder methods for Android<br/>@@ -3221,11 +3222,10 @@ dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/dec_osf.pm CBuilder method<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/os2.pm CBuilder methods for OS/2<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Unix.pm CBuilder methods for Unix<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/VMS.pm CBuilder methods for VMS<br/>+dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows.pm CBuilder methods for Windows<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/BCC.pm CBuilder methods for Windows<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/GCC.pm CBuilder methods for Windows<br/> dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows/MSVC.pm CBuilder methods for Windows<br/>-dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Platform/Windows.pm CBuilder methods for Windows<br/>-dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder.pm Compile and link C code for Perl modules<br/> dist/ExtUtils-CBuilder/LICENSE EU-CB license<br/> dist/ExtUtils-CBuilder/Makefile.PL EU-CB configuration script<br/> dist/ExtUtils-CBuilder/README.patching EU-CB patching nstructions<br/>@@ -3236,17 +3236,17 @@ dist/ExtUtils-CBuilder/t/02-link.t tests for ExtUtils::CBuilder<br/> dist/ExtUtils-CBuilder/t/03-cplusplus.t tests for ExtUtils::CBuilder<br/> dist/ExtUtils-CBuilder/t/04-base.t tests for ExtUtils::CBuilder<br/> dist/ExtUtils-ParseXS/Changes ExtUtils::ParseXS change log<br/>+dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm converts Perl XS code into C code<br/>+dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pod ExtUtils::ParseXS documentation<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Constants.pm ExtUtils::ParseXS guts<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/CountLines.pm ExtUtils::ParseXS guts<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Eval.pm ExtUtils::ParseXS guts<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS/Utilities.pm ExtUtils::ParseXS guts<br/>-dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm converts Perl XS code into C code<br/>-dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pod ExtUtils::ParseXS documentation<br/>+dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps.pm ExtUtils::Typemaps, a PXS helper<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/Cmd.pm ExtUtils::Typemaps helper module<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/InputMap.pm ExtUtils::Typemaps guts<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/OutputMap.pm ExtUtils::Typemaps guts<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps/Type.pm ExtUtils::Typemaps guts<br/>-dist/ExtUtils-ParseXS/lib/ExtUtils/Typemaps.pm ExtUtils::Typemaps, a PXS helper<br/> dist/ExtUtils-ParseXS/lib/ExtUtils/xsubpp External subroutine preprocessor<br/> dist/ExtUtils-ParseXS/lib/perlxs.pod Perl XS application programming interface<br/> dist/ExtUtils-ParseXS/lib/perlxstut.pod Perl XS tutorial<br/>@@ -3314,9 +3314,9 @@ dist/Filter-Simple/t/lib/Filter/Simple/ImportTest.pm Helper file for Filter::Si<br/> dist/I18N-Collate/lib/I18N/Collate.pm Routines to do strxfrm-based collation<br/> dist/I18N-Collate/t/I18N-Collate.t See if I18N::Collate works<br/> dist/I18N-LangTags/ChangeLog I18N::LangTags<br/>+dist/I18N-LangTags/lib/I18N/LangTags.pm I18N::LangTags<br/> dist/I18N-LangTags/lib/I18N/LangTags/Detect.pm Detect language preferences<br/> dist/I18N-LangTags/lib/I18N/LangTags/List.pm List of tags for human languages<br/>-dist/I18N-LangTags/lib/I18N/LangTags.pm I18N::LangTags<br/> dist/I18N-LangTags/README I18N::LangTags<br/> dist/I18N-LangTags/t/01_about_verbose.t See whether I18N::LangTags works<br/> dist/I18N-LangTags/t/05_main.t See whether I18N::LangTags works<br/>@@ -3340,9 +3340,9 @@ dist/IO/lib/IO/Pipe.pm IO pipe package<br/> dist/IO/lib/IO/Poll.pm IO system poll() interface<br/> dist/IO/lib/IO/Seekable.pm IO methods for seekable handles<br/> dist/IO/lib/IO/Select.pm IO system select() interface<br/>+dist/IO/lib/IO/Socket.pm IO socket handle package<br/> dist/IO/lib/IO/Socket/INET.pm IO INET specific socket methods<br/> dist/IO/lib/IO/Socket/UNIX.pm IO UNIX specific socket methods<br/>-dist/IO/lib/IO/Socket.pm IO socket handle package<br/> dist/IO/Makefile.PL IO extension makefile writer<br/> dist/IO/poll.c IO poll() emulation using select()<br/> dist/IO/poll.h IO poll() emulation using select()<br/>@@ -3373,12 +3373,12 @@ dist/lib/lib_pm.PL For &quot;use lib&quot;, produces lib/lib.pm<br/> dist/lib/Makefile.PL<br/> dist/lib/t/01lib.t For &quot;use lib&quot; testing<br/> dist/Locale-Maketext/ChangeLog Locale::Maketext<br/>+dist/Locale-Maketext/lib/Locale/Maketext.pm Locale::Maketext<br/>+dist/Locale-Maketext/lib/Locale/Maketext.pod Locale::Maketext documentation<br/> dist/Locale-Maketext/lib/Locale/Maketext/Cookbook.pod Locale::Maketext<br/> dist/Locale-Maketext/lib/Locale/Maketext/Guts.pm Locale::Maketext<br/> dist/Locale-Maketext/lib/Locale/Maketext/GutsLoader.pm Locale::Maketext<br/> dist/Locale-Maketext/lib/Locale/Maketext/TPJ13.pod Locale::Maketext documentation article<br/>-dist/Locale-Maketext/lib/Locale/Maketext.pm Locale::Maketext<br/>-dist/Locale-Maketext/lib/Locale/Maketext.pod Locale::Maketext documentation<br/> dist/Locale-Maketext/README Locale::Maketext<br/> dist/Locale-Maketext/t/01_about_verbose.t See if Locale::Maketext works<br/> dist/Locale-Maketext/t/04_use_external_lex_cache.t See if Locale::Maketext works<br/>@@ -3397,10 +3397,10 @@ dist/Locale-Maketext/t/93_whitelist.t See if Locale::Maketext works<br/> dist/Module-CoreList/Changes Module::CoreList Changes<br/> dist/Module-CoreList/corelist The corelist command-line utility<br/> dist/Module-CoreList/identify-dependencies A usage example for Module::CoreList<br/>-dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm Module::CoreList guts<br/>-dist/Module-CoreList/lib/Module/CoreList/Utils.pm Module::CoreList guts<br/> dist/Module-CoreList/lib/Module/CoreList.pm Module::CoreList<br/> dist/Module-CoreList/lib/Module/CoreList.pod Module::CoreList<br/>+dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm Module::CoreList guts<br/>+dist/Module-CoreList/lib/Module/CoreList/Utils.pm Module::CoreList guts<br/> dist/Module-CoreList/Makefile.PL Module::CoreList<br/> dist/Module-CoreList/MANIFEST Module::CoreList<br/> dist/Module-CoreList/README Module::CoreList<br/>@@ -3431,6 +3431,7 @@ dist/Net-Ping/t/520_icmp_ttl.t Ping Net::Ping<br/> dist/PathTools/Changes Changelog for PathTools dist<br/> dist/PathTools/Cwd.pm Various cwd routines (getcwd, fastcwd, chdir)<br/> dist/PathTools/Cwd.xs Cwd extension external subroutines<br/>+dist/PathTools/lib/File/Spec.pm portable operations on file names<br/> dist/PathTools/lib/File/Spec/AmigaOS.pm portable operations on AmigaOS file names<br/> dist/PathTools/lib/File/Spec/Cygwin.pm portable operations on Cygwin file names<br/> dist/PathTools/lib/File/Spec/Epoc.pm portable operations on EPOC file names<br/>@@ -3440,7 +3441,6 @@ dist/PathTools/lib/File/Spec/OS2.pm portable operations on OS2 file names<br/> dist/PathTools/lib/File/Spec/Unix.pm portable operations on Unix file names<br/> dist/PathTools/lib/File/Spec/VMS.pm portable operations on VMS file names<br/> dist/PathTools/lib/File/Spec/Win32.pm portable operations on Win32 and NetWare file names<br/>-dist/PathTools/lib/File/Spec.pm portable operations on file names<br/> dist/PathTools/Makefile.PL makefile writer for Cwd<br/> dist/PathTools/t/abs2rel.t See if File::Spec-&gt;abs2rel works<br/> dist/PathTools/t/crossplatform.t See if File::Spec works crossplatform<br/>@@ -3737,12 +3737,12 @@ ext/arybase/t/splice.t For $[<br/> ext/arybase/t/substr.t For $[<br/> ext/attributes/attributes.pm For &quot;sub foo : attrlist&quot;<br/> ext/attributes/attributes.xs For &quot;sub foo : attrlist&quot;<br/>+ext/B/B.pm Compiler backend support functions and methods<br/>+ext/B/B.xs Compiler backend external subroutines<br/> ext/B/B/Concise.pm Compiler Concise backend<br/> ext/B/B/Showlex.pm Compiler Showlex backend<br/> ext/B/B/Terse.pm Compiler Terse backend<br/> ext/B/B/Xref.pm Compiler Xref backend<br/>-ext/B/B.pm Compiler backend support functions and methods<br/>-ext/B/B.xs Compiler backend external subroutines<br/> ext/B/hints/darwin.pl Hints for named architecture<br/> ext/B/hints/openbsd.pl Hints for named architecture<br/> ext/B/Makefile.PL Compiler backend makefile writer<br/>@@ -4329,12 +4329,13 @@ lib/charnames.pm Character names<br/> lib/charnames.t See if character names work<br/> lib/Class/Struct.pm Declare struct-like datatypes as Perl classes<br/> lib/Class/Struct.t See if Class::Struct works<br/>+lib/Config.t See if Config works<br/> lib/Config/Extensions.pm Convenient hash lookup for built extensions<br/> lib/Config/Extensions.t See if Config::Extensions works<br/>-lib/Config.t See if Config works<br/> lib/CORE.pod document the CORE namespace<br/> lib/DB.pm Debugger API (draft)<br/> lib/DB.t See if DB works<br/>+lib/DBM_Filter.pm DBM Filter module<br/> lib/DBM_Filter/compress.pm DBM Filter to compress keys/values<br/> lib/DBM_Filter/encode.pm DBM Filter for encoding<br/> lib/DBM_Filter/int32.pm DBM Filter for creating int32 keys/values<br/>@@ -4347,7 +4348,6 @@ lib/DBM_Filter/t/int32.t test DBM_Filter::int32<br/> lib/DBM_Filter/t/null.t test DBM_Filter::null<br/> lib/DBM_Filter/t/utf8.t test DBM_Filter::utf8<br/> lib/DBM_Filter/utf8.pm DBM Filter for UTF-8 Encoding<br/>-lib/DBM_Filter.pm DBM Filter module<br/> lib/dbm_filter_util.pl Utility functions used by DBM Filter tests<br/> lib/deprecate.pm A pragma for deprecating modules from the core.<br/> lib/diagnostics.pm Print verbose diagnostics<br/>@@ -4362,9 +4362,9 @@ lib/ExtUtils/Embed.pm Utilities for embedding Perl in C programs<br/> lib/ExtUtils/t/Embed.t See if ExtUtils::Embed and embedding works<br/> lib/ExtUtils/typemap Extension interface types<br/> lib/ExtUtils/XSSymSet.pm on VMS, manage linker symbols when building extensions<br/>-lib/feature/unicode_strings.t See if feature &quot;unicode_strings&quot; work<br/> lib/feature.pm Pragma to enable new syntax<br/> lib/feature.t See if features work<br/>+lib/feature/unicode_strings.t See if feature &quot;unicode_strings&quot; work<br/> lib/File/Basename.pm Emulate the basename program<br/> lib/File/Basename.t See if File::Basename works<br/> lib/File/Compare.pm Emulation of cmp command<br/>@@ -4403,12 +4403,14 @@ lib/Net/servent.pm By-name interface to Perl&#39;s builtin getserv*<br/> lib/Net/servent.t See if Net::servtent works<br/> lib/open.pm Pragma to specify default I/O layers<br/> lib/open.t See if the open pragma works<br/>-lib/overload/numbers.pm Helper for overloading pragma<br/> lib/overload.pm Module for overloading perl operators<br/> lib/overload.t See if operator overloading works<br/>+lib/overload/numbers.pm Helper for overloading pragma<br/> lib/overload64.t See if operator overloading works with 64-bit ints<br/> lib/overloading.pm Pragma to lexically control overloading<br/> lib/overloading.t Tests for overloading.pm<br/>+lib/perl5db.pl Perl debugging routines<br/>+lib/perl5db.t Tests for the Perl debugger<br/> lib/perl5db/t/break-on-dot Test script used by perl5db.t<br/> lib/perl5db/t/breakpoint-bug Test script used by perl5db.t<br/> lib/perl5db/t/disable-breakpoints-1 Test script used by perl5db.t<br/>@@ -4445,8 +4447,6 @@ lib/perl5db/t/test-w-statement-1 Tests for the Perl debugger<br/> lib/perl5db/t/test-warnLevel-option-1 Tests for the Perl debugger<br/> lib/perl5db/t/uncalled-subroutine Tests for the Perl debugger<br/> lib/perl5db/t/with-subroutine Tests for the Perl debugger<br/>-lib/perl5db.pl Perl debugging routines<br/>-lib/perl5db.t Tests for the Perl debugger<br/> lib/perlbug.t Tests for the Perl bug reporter<br/> lib/PerlIO.pm PerlIO support module<br/> lib/Pod/t/InputObjects.t See if Pod::InputObjects works<br/>@@ -4467,15 +4467,15 @@ lib/Symbol.pm Symbol table manipulation routines<br/> lib/Symbol.t See if Symbol works<br/> lib/Thread.pm Thread extensions frontend<br/> lib/Thread.t Thread extensions frontend tests<br/>+lib/Tie/Array.pm Base class for tied arrays<br/> lib/Tie/Array/push.t Test for Tie::Array<br/> lib/Tie/Array/splice.t Test for Tie::Array::SPLICE<br/> lib/Tie/Array/std.t Test for Tie::StdArray<br/> lib/Tie/Array/stdpush.t Test for Tie::StdArray<br/>-lib/Tie/Array.pm Base class for tied arrays<br/> lib/Tie/ExtraHash.t Test for Tie::ExtraHash (in Tie/Hash.pm)<br/>+lib/Tie/Handle.pm Base class for tied handles<br/> lib/Tie/Handle/stdhandle.t Test for Tie::StdHandle<br/> lib/Tie/Handle/stdhandle_from_handle.t Test for Tie::StdHandle/Handle backwards compat<br/>-lib/Tie/Handle.pm Base class for tied handles<br/> lib/Tie/Hash.pm Base class for tied hashes<br/> lib/Tie/Hash.t See if Tie::Hash works<br/> lib/Tie/Scalar.pm Base class for tied scalars<br/>@@ -4558,9 +4558,9 @@ lib/vars.t See if &quot;use vars&quot; works<br/> lib/vars_carp.t See if &quot;use vars&quot; doesn&#39;t load Carp.pm per default<br/> lib/vmsish.pm Control VMS-specific behavior of Perl core<br/> lib/vmsish.t Tests for vmsish.pm<br/>-lib/warnings/register.pm For &quot;use warnings::register&quot;<br/> lib/warnings.pm For &quot;use warnings&quot;<br/> lib/warnings.t See if warning controls work<br/>+lib/warnings/register.pm For &quot;use warnings::register&quot;<br/> locale.c locale-specific utility functions<br/> make_ext.pl Used by Makefile to execute extension Makefiles<br/> make_patchnum.pl Script to generate git_version.h and lib/Config_git.pl files for all OS&#39;es<br/>@@ -4654,6 +4654,8 @@ os2/diff.configure Patches to Configure<br/> os2/dl_os2.c Addon for dl_open<br/> os2/dlfcn.h Addon for dl_open<br/> os2/Makefile.SHs Shared library generation for OS/2<br/>+os2/os2.c Additional code for OS/2<br/>+os2/os2.sym Additional symbols to export<br/> os2/OS2/OS2-ExtAttr/Changes EA access module<br/> os2/OS2/OS2-ExtAttr/ExtAttr.pm EA access module<br/> os2/OS2/OS2-ExtAttr/ExtAttr.xs EA access module<br/>@@ -4698,8 +4700,6 @@ os2/OS2/OS2-REXX/t/rx_tieydb.t DLL access module<br/> os2/OS2/OS2-REXX/t/rx_varset.t DLL access module<br/> os2/OS2/OS2-REXX/t/rx_vrexx.t DLL access module<br/> os2/OS2/typemap Common typemap for OS/2 types<br/>-os2/os2.c Additional code for OS/2<br/>-os2/os2.sym Additional symbols to export<br/> os2/os2_base.t Additional tests for builtin methods<br/> os2/os2_pipe.t Tests for pipe creation logic<br/> os2/os2add.sym Overriding symbols to export<br/>@@ -5012,6 +5012,7 @@ regcharclass.h Generated by regen/regcharclass.pl<br/> regcomp.c Regular expression compiler<br/> regcomp.h Private declarations for above<br/> regcomp.sym Data for regnodes.h<br/>+regen.pl Run all scripts that (re)generate files<br/> regen/charset_translations.pl Character set utilities<br/> regen/ebcdic.pl Generates ebcdic_tables.h<br/> regen/embed.pl Produces {embed,embedvar,proto}.h<br/>@@ -5036,7 +5037,6 @@ regen/regen_lib.pl Common file routines for generator scripts<br/> regen/uconfig_h.pl generate uconfig.h (requires /bin/sh)<br/> regen/unicode_constants.pl generate unicode_constants.h<br/> regen/warnings.pl Program to write warnings.h and lib/warnings.pm<br/>-regen.pl Run all scripts that (re)generate files<br/> regen_perly.pl generate perly.{act,h,tab} from perly.y<br/> regexec.c Regular expression evaluator<br/> regexp.h Public declarations for the above<br/>@@ -5189,6 +5189,7 @@ t/lib/Cname.pm Test charnames in regexes (op/pat.t)<br/> t/lib/common.pl Helper for lib/{warnings,feature}.t<br/> t/lib/commonsense.t See if configuration meets basic needs<br/> t/lib/Count.pm Helper for t/op/method.t<br/>+t/lib/croak.t Test calls to Perl_croak() in the C source.<br/> t/lib/croak/mg Test croak calls from mg.c<br/> t/lib/croak/op Test croak calls from op.c<br/> t/lib/croak/pp Test croak calls from pp.c<br/>@@ -5196,12 +5197,11 @@ t/lib/croak/pp_ctl Test croak calls from pp_ctl.c<br/> t/lib/croak/pp_hot Test croak calls from pp_hot.c<br/> t/lib/croak/pp_sys Test croak calls from pp_sys.c<br/> t/lib/croak/toke Test croak calls from toke.c<br/>-t/lib/croak.t Test calls to Perl_croak() in the C source.<br/> t/lib/cygwin.t Builtin cygwin function tests<br/> t/lib/dbmt_common.pl Common functionality for ?DBM_File tests<br/>+t/lib/deprecate.t Test deprecate.pm<br/> t/lib/deprecate/Deprecated.pm Deprecated module to test deprecate.pm<br/> t/lib/deprecate/Optionally.pm Optionally deprecated module to test deprecate.pm<br/>-t/lib/deprecate.t Test deprecate.pm<br/> t/lib/Devel/nodb.pm Module for t/run/switchd.t<br/> t/lib/Devel/switchd.pm Module for t/run/switchd.t<br/> t/lib/Devel/switchd_empty.pm Module for t/run/switchd.t<br/>@@ -5746,6 +5746,7 @@ utf8.h Unicode header<br/> utfebcdic.h Unicode on EBCDIC (UTF-EBCDIC, tr16) header<br/> util.c Utility routines<br/> util.h Dummy header<br/>+utils.lst Lists utilities bundled with Perl<br/> utils/c2ph.PL program to translate dbx stabs to perl<br/> utils/corelist.PL Module::CoreList<br/> utils/cpan.PL easily interact with CPAN from the command line<br/>@@ -5771,7 +5772,6 @@ utils/shasum.PL filter for computing SHA digests (analogous to md5sum)<br/> utils/splain.PL Stand-alone version of diagnostics.pm<br/> utils/xsubpp.PL External subroutine preprocessor<br/> utils/zipdetails.PL display the internal structure of zip files<br/>-utils.lst Lists utilities bundled with Perl<br/> vms/descrip_mms.template Template MM[SK] description file for build<br/> vms/gen_shrfls.pl generate options files and glue for shareable image<br/> vms/genopt.com hack to write options files in case of broken makes<br/>diff --git a/Porting/manisort b/Porting/manisort<br/>index 9d11478..72cbb9c 100644<br/>--- a/Porting/manisort<br/>+++ b/Porting/manisort<br/>@@ -14,6 +14,7 @@ $| = 1;<br/> <br/> # Get command line options<br/> use Getopt::Long;<br/>+require &quot;Porting/pod_lib.pl&quot;;<br/> my $outfile;<br/> my $check_only = 0;<br/> my $quiet = 0;<br/>@@ -30,25 +31,10 @@ my @manifest = &lt;$IN&gt;;<br/> close($IN) or die($!);<br/> chomp(@manifest);<br/> <br/>-# Try to get a sane sort. case insensitive, more or less<br/>-# sorted such that path components are compared independently,<br/>-# and so that lib/Foo/Bar.pm will sort before lib/Foo/Bar/Baz.pm<br/>-# and not after it.<br/>-#<br/>-my %seen;<br/>-my @sorted = grep { !$seen{$_}++ }<br/>- map { $_-&gt;[0] }<br/>- sort {<br/>- $a-&gt;[1] cmp $b-&gt;[1] ||<br/>- $a-&gt;[0] cmp $b-&gt;[0]<br/>- }<br/>- map {<br/>- my ($lc)= split /\s/, lc $_;<br/>- $lc =~ s! / ! \0 !gx; # replace slash by null<br/>- $lc =~ s! \. ! \0. !gx; # replace dot by null-dot<br/>- [ $_, $lc ];<br/>- }<br/>- @manifest;<br/>+my %seen= ( &#39;&#39; =&gt; 1 ); # filter out blank lines<br/>+my @sorted = grep { !$seen{$_}++ }<br/>+ sort_manifest(@manifest)<br/>+;<br/> <br/> # Check if the file is sorted or not<br/> my $exit_code = 0;<br/>diff --git a/Porting/pod_lib.pl b/Porting/pod_lib.pl<br/>index 6eaacde..4ad204c 100644<br/>--- a/Porting/pod_lib.pl<br/>+++ b/Porting/pod_lib.pl<br/>@@ -663,6 +663,35 @@ sub get_pod_metadata {<br/> return \%state;<br/> }<br/> <br/>+# Try to get a sane sort. case insensitive, more or less<br/>+# sorted such that path components are compared independently,<br/>+# and so that lib/Foo/Bar sorts before lib/Foo-Alpha/Baz<br/>+# and so that lib/Foo/Bar.pm sorts before lib/Foo/Bar/Alpha.pm<br/>+# and so that configure and Configure sort together.<br/>+sub sort_manifest {<br/>+ return<br/>+ # case insensitive sorting of directory components independently.<br/>+ map { $_-&gt;[0] } # extract the full line<br/>+ sort {<br/>+ $a-&gt;[1] cmp $b-&gt;[1] || # sort in order of munged filename<br/>+ $a-&gt;[0] cmp $b-&gt;[0] # then by the exact text in full line<br/>+ }<br/>+ map {<br/>+ # split out the filename and the description<br/>+ my ($f) = split /\s+/, $_, 2;<br/>+ # lc the filename so Configure and configure sort together in the list<br/>+ my $m= lc $f; # $m for munged<br/>+ # replace slashes by nulls, this makes short directory names sort before<br/>+ # longer ones, such as &quot;foo/&quot; sorting before &quot;foo-bar/&quot;<br/>+ $m =~ s!/!\0!g;<br/>+ # replace the extension (only one) by null null extension.<br/>+ # this puts any foo/blah.ext before any files in foo/blah/<br/>+ $m =~ s!(\.[^.]+\z)!\0\0$1!;<br/>+ # return the original string, and the munged filename<br/>+ [ $_, $m ];<br/>+ } @_;<br/>+}<br/>+<br/> 1;<br/> <br/> # ex: set ts=8 sts=4 sw=4 et:<br/>diff --git a/Porting/pod_rules.pl b/Porting/pod_rules.pl<br/>index 96c1988..af5550e 100644<br/>--- a/Porting/pod_rules.pl<br/>+++ b/Porting/pod_rules.pl<br/>@@ -140,17 +140,15 @@ sub do_manifest {<br/> my @manifest =<br/> grep {! m!^pod/[^. \t]+\.pod.*!}<br/> grep {! m!^README\.(\S+)! || $state-&gt;{ignore}{$1}} split &quot;\n&quot;, $prev;<br/>- join &quot;\n&quot;, (<br/>- # Dictionary order - fold and handle non-word chars as nothing<br/>- map { $_-&gt;[0] }<br/>- sort { $a-&gt;[1] cmp $b-&gt;[1] || $a-&gt;[0] cmp $b-&gt;[0] }<br/>- map { my $f = lc $_;<br/>- $f =~ s! / ! \0 !gx;<br/>- $f =~ s! \. ! \0. !gx;<br/>- [ $_, $f ]<br/>- } @manifest,<br/>- &amp;generate_manifest_pod(),<br/>- &amp;generate_manifest_readme()), &#39;&#39;;<br/>+ # NOTE - the sort code here is shared with Porting/manisort currently.<br/>+ # If you change one, change the other. Or refactor them. :-)<br/>+ join &quot;\n&quot;, sort_manifest(<br/>+ @manifest,<br/>+ &amp;generate_manifest_pod(),<br/>+ &amp;generate_manifest_readme()<br/>+ ),<br/>+ &#39;&#39;, # elegant way to add a newline to the end<br/>+ ;<br/> }<br/> <br/> sub do_nmake {<br/>diff --git a/pod/perltie.pod b/pod/perltie.pod<br/>index 8921416..87a2126 100644<br/>--- a/pod/perltie.pod<br/>+++ b/pod/perltie.pod<br/>@@ -831,7 +831,7 @@ referenced by C&lt;$self-E&lt;gt&gt;{LIST}&gt;:<br/> NOTE: In perl 5.25 the behavior of scalar %hash on an untied hash changed<br/> to return the count of keys. Prior to this it returned a string containing<br/> information about the bucket setup of the hash. See<br/>-C&lt;Hash::Util::bucket_ratio()&gt; for a backwards compatibility path.<br/>+L&lt;Hash::Util/bucket_ratio&gt; for a backwards compatibility path.<br/> <br/> =item UNTIE this<br/> X&lt;UNTIE&gt;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47486.html Wed, 22 Jun 2016 16:20:54 +0000 [perl.git] branch smoke-me/no_xhv_fill, updated.v5.25.2-23-g9952e87 by Yves Orton In perl.git, the branch smoke-me/no_xhv_fill has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/9952e8720801354d6b34da600a3d152d3b450e46?hp=59dc1addcceb34465dde8cda10dd17519cc9e5fb&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 9952e8720801354d6b34da600a3d152d3b450e46<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Wed Jun 22 09:23:22 2016 +0200<br/><br/> tweaks to pod now that scalar(%hash) has a useful return<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> pod/perldata.pod | 17 ++++++++++++-----<br/> pod/perltie.pod | 8 +++++++-<br/> 2 files changed, 19 insertions(+), 6 deletions(-)<br/><br/>diff --git a/pod/perldata.pod b/pod/perldata.pod<br/>index 66bb206..0ff6534 100644<br/>--- a/pod/perldata.pod<br/>+++ b/pod/perldata.pod<br/>@@ -400,17 +400,24 @@ leave nothing to doubt:<br/> $element_count = scalar(@whatever);<br/> <br/> If you evaluate a hash in scalar context, it returns false if the<br/>-hash is empty. If there are any key/value pairs, it returns true;<br/>-more precisely, the value returned is a string consisting of the<br/>+hash is empty. If there are any key/value pairs, it returns true.<br/>+A more precise definition is version dependent.<br/>+<br/>+Prior to Perl 5.25 the value returned was a string consisting of the<br/> number of used buckets and the number of allocated buckets, separated<br/> by a slash. This is pretty much useful only to find out whether<br/> Perl&#39;s internal hashing algorithm is performing poorly on your data<br/> set. For example, you stick 10,000 things in a hash, but evaluating<br/> %HASH in scalar context reveals C&lt;&quot;1/16&quot;&gt;, which means only one out<br/> of sixteen buckets has been touched, and presumably contains all<br/>-10,000 of your items. This isn&#39;t supposed to happen. If a tied hash<br/>-is evaluated in scalar context, the C&lt;SCALAR&gt; method is called (with a<br/>-fallback to C&lt;FIRSTKEY&gt;).<br/>+10,000 of your items. This isn&#39;t supposed to happen.<br/>+<br/>+As of Perl 5.25 the return was changed to be the count of keys in the<br/>+hash. If you need access to the old behavior you can use<br/>+C&lt;Hash::Util::bucket_ratio()&gt; instead.<br/>+<br/>+If a tied hash is evaluated in scalar context, the C&lt;SCALAR&gt; method is<br/>+called (with a fallback to C&lt;FIRSTKEY&gt;).<br/> X&lt;hash, scalar context&gt; X&lt;hash, bucket&gt; X&lt;bucket&gt;<br/> <br/> You can preallocate space for a hash by assigning to the keys() function.<br/>diff --git a/pod/perltie.pod b/pod/perltie.pod<br/>index 7b89f57..8921416 100644<br/>--- a/pod/perltie.pod<br/>+++ b/pod/perltie.pod<br/>@@ -828,6 +828,11 @@ referenced by C&lt;$self-E&lt;gt&gt;{LIST}&gt;:<br/> return scalar %{ $self-&gt;{LIST} }<br/> }<br/> <br/>+NOTE: In perl 5.25 the behavior of scalar %hash on an untied hash changed<br/>+to return the count of keys. Prior to this it returned a string containing<br/>+information about the bucket setup of the hash. See<br/>+C&lt;Hash::Util::bucket_ratio()&gt; for a backwards compatibility path.<br/>+<br/> =item UNTIE this<br/> X&lt;UNTIE&gt;<br/> <br/>@@ -1196,10 +1201,11 @@ modules L&lt;Tie::Scalar&gt;, L&lt;Tie::Array&gt;, L&lt;Tie::Hash&gt;, or L&lt;Tie::Handle&gt;.<br/> <br/> =head1 BUGS<br/> <br/>-The bucket usage information provided by C&lt;scalar(%hash)&gt; is not<br/>+The normal return provided by C&lt;scalar(%hash)&gt; is not<br/> available. What this means is that using %tied_hash in boolean<br/> context doesn&#39;t work right (currently this always tests false,<br/> regardless of whether the hash is empty or hash elements).<br/>+[ This paragraph needs review in light of changes in 5.25 ]<br/> <br/> Localizing tied arrays or hashes does not work. After exiting the<br/> scope the arrays or the hashes are not restored.<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47485.html Wed, 22 Jun 2016 07:24:21 +0000 [perl.git] branch blead, updated. v5.25.2-25-ga49fc7b by Karl Williamson In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/a49fc7b3df0604607677e9aa70ac9c5468bbd742?hp=c92b26e114702cae63b26bfe6517283589a04296&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit a49fc7b3df0604607677e9aa70ac9c5468bbd742<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Tue Jun 21 09:39:59 2016 -0600<br/><br/> perldelta for Unicode 9.0<br/><br/>M pod/perldelta.pod<br/><br/>commit f2bfbac0855ff84c0a0d9cda7134d653d4e04428<br/>Author: Unicode Consortium &lt;unicode.org&gt;<br/>Date: Thu Jun 9 16:28:27 2016 -0600<br/><br/> Use Unicode 9.0<br/> <br/> This includes regenerating the files that depend on the Unicode 9 data<br/> files<br/><br/>M charclass_invlists.h<br/>M lib/Unicode/UCD.t<br/>M lib/unicore/ArabicShaping.txt<br/>M lib/unicore/BidiBrackets.txt<br/>M lib/unicore/BidiMirroring.txt<br/>M lib/unicore/Blocks.txt<br/>M lib/unicore/CJKRadicals.txt<br/>M lib/unicore/CaseFolding.txt<br/>M lib/unicore/CompositionExclusions.txt<br/>M lib/unicore/DAge.txt<br/>M lib/unicore/DCoreProperties.txt<br/>M lib/unicore/DNormalizationProps.txt<br/>M lib/unicore/EastAsianWidth.txt<br/>M lib/unicore/EmojiSources.txt<br/>M lib/unicore/HangulSyllableType.txt<br/>M lib/unicore/Index.txt<br/>M lib/unicore/IndicPositionalCategory.txt<br/>M lib/unicore/IndicSyllabicCategory.txt<br/>M lib/unicore/Jamo.txt<br/>M lib/unicore/LineBreak.txt<br/>M lib/unicore/NameAliases.txt<br/>M lib/unicore/NamedSequences.txt<br/>M lib/unicore/NamedSqProv.txt<br/>M lib/unicore/NamesList.txt<br/>M lib/unicore/NormalizationCorrections.txt<br/>M lib/unicore/PropList.txt<br/>M lib/unicore/PropValueAliases.txt<br/>M lib/unicore/PropertyAliases.txt<br/>M lib/unicore/ReadMe.txt<br/>M lib/unicore/ScriptExtensions.txt<br/>M lib/unicore/Scripts.txt<br/>M lib/unicore/SpecialCasing.txt<br/>M lib/unicore/StandardizedVariants.txt<br/>M lib/unicore/UnicodeData.txt<br/>M lib/unicore/auxiliary/GCBTest.txt<br/>M lib/unicore/auxiliary/GraphemeBreakProperty.txt<br/>M lib/unicore/auxiliary/LBTest.txt<br/>M lib/unicore/auxiliary/SBTest.txt<br/>M lib/unicore/auxiliary/SentenceBreakProperty.txt<br/>M lib/unicore/auxiliary/WBTest.txt<br/>M lib/unicore/auxiliary/WordBreakProperty.txt<br/>M lib/unicore/extracted/DBidiClass.txt<br/>M lib/unicore/extracted/DBinaryProperties.txt<br/>M lib/unicore/extracted/DCombiningClass.txt<br/>M lib/unicore/extracted/DDecompositionType.txt<br/>M lib/unicore/extracted/DEastAsianWidth.txt<br/>M lib/unicore/extracted/DGeneralCategory.txt<br/>M lib/unicore/extracted/DJoinGroup.txt<br/>M lib/unicore/extracted/DJoinType.txt<br/>M lib/unicore/extracted/DLineBreak.txt<br/>M lib/unicore/extracted/DNumType.txt<br/>M lib/unicore/extracted/DNumValues.txt<br/>M lib/unicore/version<br/>M regcharclass.h<br/>M unicode_constants.h<br/><br/>commit b0e24409fd3623db353286c203d33b56e622bae6<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Thu Jun 16 11:59:24 2016 -0600<br/><br/> Prepare for Unicode 9.0<br/> <br/> The major code changes needed to support Unicode 9.0 are to changes in<br/> the boundary (break) rules, for things like \b{lb}, \b{wb}.<br/> regen/mk_invlists.pl creates two-dimensional arrays for all these<br/> properties. To see if a given point in the target string is a break or<br/> not, regexec.c looks up the entry in the property&#39;s table whose row<br/> corresponds to the code point before the potential break, and whose<br/> column corresponds to the one after. Mostly this is completely<br/> determining, but for some cases, extra context is required, and the<br/> array entry indicates this, and there has to be specially crafted code<br/> in regexec.c to handle each such possibility. When a new release comes<br/> along, mk_invlists.pl has to be changed to handle any new or changed<br/> rules, and regexec.c has to be changed to handle any changes to the<br/> custom code.<br/> <br/> Unfortunately this is not a mature area of the Standard, and changes are<br/> fairly common in new releases. In part, this is because new types of<br/> code points come along, which need new rules. Sometimes it is because<br/> they realized the previous version didn&#39;t work as well as it could. An<br/> example of the latter is that Unicode now realizes that Regional<br/> Indicator (RI) characters come in pairs, and that one should be able to<br/> break between each pair, but not within a pair. Previous versions<br/> treated any run of them as unbreakable. (Regional Indicators are a<br/> fairly recent type that was added to the Standard in 6.0, and things are<br/> still getting shaken out.)<br/> <br/> The other main changes to these rules also involve a fairly new type of<br/> character, emojis. We can expect further changes to these in the next<br/> Unicode releases.<br/> <br/> \b{gcb} for the first time, now depends on context (in rarely<br/> encountered cases, like RI&#39;s), so the function had to be changed from a<br/> simple table look-up to be more like the functions handling the other<br/> break properties.<br/> <br/> Some years ago I revamped mktables in part to try to make it require as<br/> few manual interventions as possible when upgrading to a new version of<br/> Unicode. For example, a new data file in a release requires telling<br/> mktables about it, but as long as it follows the format of existing<br/> recent files, nothing else need be done to get whatever properties it<br/> describes to be included.<br/> <br/> Some of changes to mktables involved guessing, from existing limited<br/> data, what the underlying paradigm for that data was. The problem with<br/> that is there may not have been a paradigm, just something they did ad<br/> hoc, which can change at will; or I didn&#39;t understand their unstated<br/> thinking, and guessed wrong.<br/> <br/> Besides the boundary rule changes, the only change that the existing<br/> mktables couldn&#39;t cope with was the addition of the Tangut script, whose<br/> character names include the code point, like CJK UNIFIED IDEOGRAPH-3400<br/> has always done. The paradigm for this wasn&#39;t clear, since CJK was the<br/> only script that had this characteristic, and so I hard-coded it into<br/> mktables. The way Tangut is structured may show that there is a<br/> paradigm emerging (but we only have two examples, and there may not be a<br/> paradigm at all), and so I have guessed one, and changed mktables to<br/> assume this guessed paradigm. If other scripts like this come along,<br/> and I have guessed correctly, mktables will cope with these<br/> automatically without manual intervention.<br/><br/>M charclass_invlists.h<br/>M embed.fnc<br/>M embed.h<br/>M lib/Unicode/UCD.pm<br/>M lib/charnames.t<br/>M lib/unicore/mktables<br/>M pod/perlrebackslash.pod<br/>M proto.h<br/>M regcharclass.h<br/>M regen/mk_invlists.pl<br/>M regexec.c<br/><br/>commit 6295dc14882a54531ce4542f1d80fa8ae7b4f8f0<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Thu Jun 16 11:48:28 2016 -0600<br/><br/> Tell mktables what Unicode version mk_invlist.pl handles<br/> <br/> A downside of supporting the Unicode break properties like \b{gcb},<br/> \b{lb} is that these aren&#39;t very mature in the Standard, and so code<br/> likely has to change when updating Perl to support a new version of the<br/> Standard.<br/> <br/> And the new rules may not be backwards compatible. This commit creates<br/> a mechanism to tell mktables the Unicode version that the rules are<br/> written for. If that is not the same version as being compiled, the<br/> test file marks any failing boundary tests as TODO, and outputs a<br/> warning if the compiled version is later than the code expects, to<br/> alert you to the fact that the code needs to be updated.<br/><br/>M charclass_invlists.h<br/>M lib/unicore/mktables<br/>M regcharclass.h<br/><br/>commit b6c0faaf0a2924c76850099116895e5c29a739e1<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Thu Jun 9 15:55:39 2016 -0600<br/><br/> regexec.c: Add a const to a function parameter<br/> <br/> This value isn&#39;t changed by the function<br/><br/>M embed.fnc<br/>M proto.h<br/>M regexec.c<br/><br/>commit 4e058f448f14936d2650df689211ba416bb627ba<br/>Author: Karl Williamson &lt;khw@cpan.org&gt;<br/>Date: Thu Jun 9 15:35:15 2016 -0600<br/><br/> t/re/uniprops.t: Add more description for \b{} tests<br/> <br/> mktables generates a file of tests used in t/re/uniprops.t.<br/> The tests furnished by Unicode for the boundaries like \b{gcb} have<br/> comments that indicate the rules each test is testing. These are useful<br/> in debugging. This commit changes things so the generated file that<br/> includes these Unicode-supplied tests also has the corresponding<br/> comments which are output as part of the test descriptions.<br/><br/>M charclass_invlists.h<br/>M lib/unicore/mktables<br/>M regcharclass.h<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> charclass_invlists.h | 5207 +++++++++++++---<br/> embed.fnc | 11 +-<br/> embed.h | 3 +-<br/> lib/Unicode/UCD.pm | 13 +-<br/> lib/Unicode/UCD.t | 2 +-<br/> lib/charnames.t | 26 +-<br/> lib/unicore/ArabicShaping.txt | 109 +-<br/> lib/unicore/BidiBrackets.txt | 19 +-<br/> lib/unicore/BidiMirroring.txt | 14 +-<br/> lib/unicore/Blocks.txt | 19 +-<br/> lib/unicore/CJKRadicals.txt | 24 +-<br/> lib/unicore/CaseFolding.txt | 91 +-<br/> lib/unicore/CompositionExclusions.txt | 12 +-<br/> lib/unicore/DAge.txt | 73 +-<br/> lib/unicore/DCoreProperties.txt | 412 +-<br/> lib/unicore/DNormalizationProps.txt | 110 +-<br/> lib/unicore/EastAsianWidth.txt | 288 +-<br/> lib/unicore/EmojiSources.txt | 8 +-<br/> lib/unicore/HangulSyllableType.txt | 11 +-<br/> lib/unicore/Index.txt | 134 +-<br/> lib/unicore/IndicPositionalCategory.txt | 65 +-<br/> lib/unicore/IndicSyllabicCategory.txt | 66 +-<br/> lib/unicore/Jamo.txt | 10 +-<br/> lib/unicore/LineBreak.txt | 282 +-<br/> lib/unicore/NameAliases.txt | 12 +-<br/> lib/unicore/NamedSequences.txt | 28 +-<br/> lib/unicore/NamedSqProv.txt | 37 +-<br/> lib/unicore/NamesList.txt | 2241 ++++++-<br/> lib/unicore/NormalizationCorrections.txt | 12 +-<br/> lib/unicore/PropList.txt | 222 +-<br/> lib/unicore/PropValueAliases.txt | 60 +-<br/> lib/unicore/PropertyAliases.txt | 16 +-<br/> lib/unicore/ReadMe.txt | 12 +-<br/> lib/unicore/ScriptExtensions.txt | 108 +-<br/> lib/unicore/Scripts.txt | 157 +-<br/> lib/unicore/SpecialCasing.txt | 11 +-<br/> lib/unicore/StandardizedVariants.txt | 321 +-<br/> lib/unicore/UnicodeData.txt | 1383 ++++-<br/> lib/unicore/auxiliary/GCBTest.txt | 561 +-<br/> lib/unicore/auxiliary/GraphemeBreakProperty.txt | 127 +-<br/> lib/unicore/auxiliary/LBTest.txt | 7502 +++++++++++++----------<br/> lib/unicore/auxiliary/SBTest.txt | 714 +--<br/> lib/unicore/auxiliary/SentenceBreakProperty.txt | 86 +-<br/> lib/unicore/auxiliary/WBTest.txt | 841 ++-<br/> lib/unicore/auxiliary/WordBreakProperty.txt | 139 +-<br/> lib/unicore/extracted/DBidiClass.txt | 124 +-<br/> lib/unicore/extracted/DBinaryProperties.txt | 11 +-<br/> lib/unicore/extracted/DCombiningClass.txt | 115 +-<br/> lib/unicore/extracted/DDecompositionType.txt | 15 +-<br/> lib/unicore/extracted/DEastAsianWidth.txt | 262 +-<br/> lib/unicore/extracted/DGeneralCategory.txt | 209 +-<br/> lib/unicore/extracted/DJoinGroup.txt | 38 +-<br/> lib/unicore/extracted/DJoinType.txt | 44 +-<br/> lib/unicore/extracted/DLineBreak.txt | 274 +-<br/> lib/unicore/extracted/DNumType.txt | 22 +-<br/> lib/unicore/extracted/DNumValues.txt | 145 +-<br/> lib/unicore/mktables | 127 +-<br/> lib/unicore/version | 2 +-<br/> pod/perldelta.pod | 7 +<br/> pod/perlrebackslash.pod | 2 +-<br/> proto.h | 11 +-<br/> regcharclass.h | 90 +-<br/> regen/mk_invlists.pl | 233 +-<br/> regexec.c | 193 +-<br/> unicode_constants.h | 6 +-<br/> 65 files changed, 17839 insertions(+), 5690 deletions(-)<br/><br/>diff --git a/charclass_invlists.h b/charclass_invlists.h<br/>index 17e0c6f..c53c2a9 100644<br/>--- a/charclass_invlists.h<br/>+++ b/charclass_invlists.h<br/>@@ -43,7 +43,7 @@ static const UV ASCII_invlist[] = { /* for ASCII/Latin1 */<br/> };<br/> <br/> static const UV Cased_invlist[] = { /* for ASCII/Latin1 */<br/>- 263, /* Number of elements */<br/>+ 271, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 1, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -112,6 +112,8 @@ static const UV Cased_invlist[] = { /* for ASCII/Latin1 */<br/> 0x13F6,<br/> 0x13F8,<br/> 0x13FE,<br/>+ 0x1C80,<br/>+ 0x1C89,<br/> 0x1D00,<br/> 0x1DC0,<br/> 0x1E00,<br/>@@ -217,7 +219,7 @@ static const UV Cased_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA78B,<br/> 0xA78F,<br/> 0xA790,<br/>- 0xA7AE,<br/>+ 0xA7AF,<br/> 0xA7B0,<br/> 0xA7B8,<br/> 0xA7F8,<br/>@@ -238,6 +240,10 @@ static const UV Cased_invlist[] = { /* for ASCII/Latin1 */<br/> 0xFF5B,<br/> 0x10400,<br/> 0x10450,<br/>+ 0x104B0,<br/>+ 0x104D4,<br/>+ 0x104D8,<br/>+ 0x104FC,<br/> 0x10C80,<br/> 0x10CB3,<br/> 0x10CC0,<br/>@@ -304,6 +310,8 @@ static const UV Cased_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1D7C3,<br/> 0x1D7C4,<br/> 0x1D7CC,<br/>+ 0x1E900,<br/>+ 0x1E944,<br/> 0x1F130,<br/> 0x1F14A,<br/> 0x1F150,<br/>@@ -369,7 +377,7 @@ static const UV NonL1_Perl_Non_Final_Folds_invlist[] = { /* for ASCII/Latin1 */<br/> };<br/> <br/> static const UV _Perl_Any_Folds_invlist[] = { /* for ASCII/Latin1 */<br/>- 247, /* Number of elements */<br/>+ 253, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 1, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -419,8 +427,6 @@ static const UV _Perl_Any_Folds_invlist[] = { /* for ASCII/Latin1 */<br/> 0x265,<br/> 0x267,<br/> 0x268,<br/>- 0x26A,<br/>- 0x26B,<br/> 0x26D,<br/> 0x26F,<br/> 0x270,<br/>@@ -500,6 +506,8 @@ static const UV _Perl_Any_Folds_invlist[] = { /* for ASCII/Latin1 */<br/> 0x13F6,<br/> 0x13F8,<br/> 0x13FE,<br/>+ 0x1C80,<br/>+ 0x1C89,<br/> 0x1D79,<br/> 0x1D7A,<br/> 0x1D7D,<br/>@@ -597,7 +605,7 @@ static const UV _Perl_Any_Folds_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA790,<br/> 0xA794,<br/> 0xA796,<br/>- 0xA7AE,<br/>+ 0xA7AF,<br/> 0xA7B0,<br/> 0xA7B8,<br/> 0xAB53,<br/>@@ -614,12 +622,18 @@ static const UV _Perl_Any_Folds_invlist[] = { /* for ASCII/Latin1 */<br/> 0xFF5B,<br/> 0x10400,<br/> 0x10450,<br/>+ 0x104B0,<br/>+ 0x104D4,<br/>+ 0x104D8,<br/>+ 0x104FC,<br/> 0x10C80,<br/> 0x10CB3,<br/> 0x10CC0,<br/> 0x10CF3,<br/> 0x118A0,<br/>- 0x118E0<br/>+ 0x118E0,<br/>+ 0x1E900,<br/>+ 0x1E944<br/> };<br/> <br/> static const UV _Perl_Folds_To_Multi_Char_invlist[] = { /* for ASCII/Latin1 */<br/>@@ -693,7 +707,7 @@ static const UV _Perl_Folds_To_Multi_Char_invlist[] = { /* for ASCII/Latin1 */<br/> #if defined(PERL_IN_PERL_C)<br/> <br/> static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/>- 1502, /* Number of elements */<br/>+ 1615, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 0, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -760,6 +774,8 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x82E,<br/> 0x859,<br/> 0x85C,<br/>+ 0x8D4,<br/>+ 0x8E2,<br/> 0x8E3,<br/> 0x903,<br/> 0x904,<br/>@@ -908,6 +924,7 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xD4A,<br/> 0xD4D,<br/> 0xD4E,<br/>+ 0xD4F,<br/> 0xD57,<br/> 0xD58,<br/> 0xD62,<br/>@@ -1016,6 +1033,8 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x180B,<br/> 0x180E,<br/> 0x180F,<br/>+ 0x1885,<br/>+ 0x1887,<br/> 0x18A9,<br/> 0x18AA,<br/> 0x1920,<br/>@@ -1102,10 +1121,11 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1CFA,<br/> 0x1DC0,<br/> 0x1DF6,<br/>- 0x1DFC,<br/>+ 0x1DFB,<br/> 0x1E00,<br/> 0x200B,<br/> 0x200C,<br/>+ 0x200D,<br/> 0x200E,<br/> 0x2010,<br/> 0x2028,<br/>@@ -1114,6 +1134,14 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x2070,<br/> 0x20D0,<br/> 0x20F1,<br/>+ 0x261D,<br/>+ 0x261E,<br/>+ 0x26F9,<br/>+ 0x26FA,<br/>+ 0x270A,<br/>+ 0x270E,<br/>+ 0x2764,<br/>+ 0x2765,<br/> 0x2CEF,<br/> 0x2CF2,<br/> 0x2D7F,<br/>@@ -1146,7 +1174,7 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA882,<br/> 0xA8B4,<br/> 0xA8C4,<br/>- 0xA8C5,<br/>+ 0xA8C6,<br/> 0xA8E0,<br/> 0xA8F2,<br/> 0xA926,<br/>@@ -2073,6 +2101,8 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x111B6,<br/> 0x111BF,<br/> 0x111C1,<br/>+ 0x111C2,<br/>+ 0x111C4,<br/> 0x111CA,<br/> 0x111CD,<br/> 0x1122C,<br/>@@ -2082,6 +2112,8 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11235,<br/> 0x11236,<br/> 0x11238,<br/>+ 0x1123E,<br/>+ 0x1123F,<br/> 0x112DF,<br/> 0x112E0,<br/> 0x112E3,<br/>@@ -2108,6 +2140,13 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1136D,<br/> 0x11370,<br/> 0x11375,<br/>+ 0x11435,<br/>+ 0x11438,<br/>+ 0x11440,<br/>+ 0x11442,<br/>+ 0x11445,<br/>+ 0x11446,<br/>+ 0x11447,<br/> 0x114B0,<br/> 0x114B1,<br/> 0x114B3,<br/>@@ -2152,6 +2191,22 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11726,<br/> 0x11727,<br/> 0x1172C,<br/>+ 0x11C2F,<br/>+ 0x11C30,<br/>+ 0x11C37,<br/>+ 0x11C38,<br/>+ 0x11C3E,<br/>+ 0x11C3F,<br/>+ 0x11C40,<br/>+ 0x11C92,<br/>+ 0x11CA8,<br/>+ 0x11CA9,<br/>+ 0x11CAA,<br/>+ 0x11CB1,<br/>+ 0x11CB2,<br/>+ 0x11CB4,<br/>+ 0x11CB5,<br/>+ 0x11CB7,<br/> 0x16AF0,<br/> 0x16AF5,<br/> 0x16B30,<br/>@@ -2191,11 +2246,83 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1DAA0,<br/> 0x1DAA1,<br/> 0x1DAB0,<br/>+ 0x1E000,<br/>+ 0x1E007,<br/>+ 0x1E008,<br/>+ 0x1E019,<br/>+ 0x1E01B,<br/>+ 0x1E022,<br/>+ 0x1E023,<br/>+ 0x1E025,<br/>+ 0x1E026,<br/>+ 0x1E02B,<br/> 0x1E8D0,<br/> 0x1E8D7,<br/>+ 0x1E944,<br/>+ 0x1E94B,<br/> 0x1F1E6,<br/> 0x1F200,<br/>+ 0x1F385,<br/>+ 0x1F386,<br/>+ 0x1F3C3,<br/>+ 0x1F3C5,<br/>+ 0x1F3CA,<br/>+ 0x1F3CC,<br/>+ 0x1F3FB,<br/>+ 0x1F400,<br/>+ 0x1F442,<br/>+ 0x1F444,<br/>+ 0x1F446,<br/>+ 0x1F451,<br/>+ 0x1F466,<br/>+ 0x1F46A,<br/>+ 0x1F46E,<br/>+ 0x1F46F,<br/>+ 0x1F470,<br/>+ 0x1F479,<br/>+ 0x1F47C,<br/>+ 0x1F47D,<br/>+ 0x1F481,<br/>+ 0x1F484,<br/>+ 0x1F485,<br/>+ 0x1F488,<br/>+ 0x1F48B,<br/>+ 0x1F48C,<br/>+ 0x1F4AA,<br/>+ 0x1F4AB,<br/>+ 0x1F575,<br/>+ 0x1F576,<br/>+ 0x1F57A,<br/>+ 0x1F57B,<br/>+ 0x1F590,<br/>+ 0x1F591,<br/>+ 0x1F595,<br/>+ 0x1F597,<br/>+ 0x1F5E8,<br/>+ 0x1F5E9,<br/>+ 0x1F645,<br/>+ 0x1F648,<br/>+ 0x1F64B,<br/>+ 0x1F650,<br/>+ 0x1F6A3,<br/>+ 0x1F6A4,<br/>+ 0x1F6B4,<br/>+ 0x1F6B7,<br/>+ 0x1F6C0,<br/>+ 0x1F6C1,<br/>+ 0x1F918,<br/>+ 0x1F91F,<br/>+ 0x1F926,<br/>+ 0x1F927,<br/>+ 0x1F930,<br/>+ 0x1F931,<br/>+ 0x1F933,<br/>+ 0x1F93A,<br/>+ 0x1F93C,<br/>+ 0x1F93F,<br/> 0xE0000,<br/>+ 0xE0020,<br/>+ 0xE0080,<br/> 0xE0100,<br/> 0xE01F0,<br/> 0xE1000<br/>@@ -2205,23 +2332,28 @@ static const UV _Perl_GCB_invlist[] = { /* for ASCII/Latin1 */<br/> <br/> #if defined(PERL_IN_REGEXEC_C)<br/> <br/>-#define GCB_ENUM_COUNT 14<br/>+#define GCB_ENUM_COUNT 19<br/> <br/> typedef enum {<br/> GCB_Other = 0,<br/> GCB_CR = 1,<br/> GCB_Control = 2,<br/>- GCB_Extend = 3,<br/>- GCB_L = 4,<br/>- GCB_LF = 5,<br/>- GCB_LV = 6,<br/>- GCB_LVT = 7,<br/>- GCB_Prepend = 8,<br/>- GCB_Regional_Indicator = 9,<br/>- GCB_SpacingMark = 10,<br/>- GCB_T = 11,<br/>- GCB_V = 12,<br/>- GCB_EDGE = 13<br/>+ GCB_E_Base = 3,<br/>+ GCB_E_Base_GAZ = 4,<br/>+ GCB_E_Modifier = 5,<br/>+ GCB_Extend = 6,<br/>+ GCB_Glue_After_Zwj = 7,<br/>+ GCB_L = 8,<br/>+ GCB_LF = 9,<br/>+ GCB_LV = 10,<br/>+ GCB_LVT = 11,<br/>+ GCB_Prepend = 12,<br/>+ GCB_Regional_Indicator = 13,<br/>+ GCB_SpacingMark = 14,<br/>+ GCB_T = 15,<br/>+ GCB_V = 16,<br/>+ GCB_ZWJ = 17,<br/>+ GCB_EDGE = 18<br/> } GCB_enum;<br/> <br/> static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/>@@ -2249,7 +2381,7 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>- GCB_Control,<br/>+ GCB_Prepend,<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>@@ -2260,7 +2392,7 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Extend,<br/> GCB_Other,<br/> GCB_Extend,<br/>- GCB_Control,<br/>+ GCB_Prepend,<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>@@ -2268,7 +2400,7 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>- GCB_Control,<br/>+ GCB_Prepend,<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>@@ -2289,6 +2421,8 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Extend,<br/> GCB_Other,<br/> GCB_Extend,<br/>+ GCB_Prepend,<br/>+ GCB_Extend,<br/> GCB_SpacingMark,<br/> GCB_Other,<br/> GCB_Extend,<br/>@@ -2435,6 +2569,7 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Other,<br/> GCB_SpacingMark,<br/> GCB_Extend,<br/>+ GCB_Prepend,<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>@@ -2547,6 +2682,8 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Extend,<br/> GCB_Other,<br/> GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/> GCB_SpacingMark,<br/> GCB_Extend,<br/> GCB_SpacingMark,<br/>@@ -2634,6 +2771,7 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Other,<br/> GCB_Control,<br/> GCB_Extend,<br/>+ GCB_ZWJ,<br/> GCB_Control,<br/> GCB_Other,<br/> GCB_Control,<br/>@@ -2642,6 +2780,14 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_Glue_After_Zwj,<br/>+ GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/> GCB_Extend,<br/>@@ -3584,7 +3730,7 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_SpacingMark,<br/> GCB_Extend,<br/> GCB_Other,<br/>- GCB_Control,<br/>+ GCB_Prepend,<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>@@ -3601,6 +3747,8 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Extend,<br/> GCB_SpacingMark,<br/> GCB_Other,<br/>+ GCB_Prepend,<br/>+ GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/> GCB_SpacingMark,<br/>@@ -3611,6 +3759,8 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Extend,<br/> GCB_Other,<br/> GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/> GCB_SpacingMark,<br/> GCB_Extend,<br/> GCB_Other,<br/>@@ -3636,6 +3786,13 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/> GCB_Extend,<br/> GCB_SpacingMark,<br/> GCB_Extend,<br/>@@ -3680,6 +3837,22 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_SpacingMark,<br/> GCB_Extend,<br/> GCB_Other,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_SpacingMark,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/> GCB_Extend,<br/>@@ -3721,8 +3894,80 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> GCB_Other,<br/> GCB_Extend,<br/> GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/>+ GCB_Extend,<br/>+ GCB_Other,<br/> GCB_Regional_Indicator,<br/> GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Modifier,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base_GAZ,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_Glue_After_Zwj,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_Glue_After_Zwj,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_E_Base,<br/>+ GCB_Other,<br/>+ GCB_Control,<br/>+ GCB_Extend,<br/> GCB_Control,<br/> GCB_Extend,<br/> GCB_Control,<br/>@@ -3734,7 +3979,7 @@ static const GCB_enum _Perl_GCB_invmap[] = { /* for ASCII/Latin1 */<br/> #if defined(PERL_IN_UTF8_C)<br/> <br/> static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/>- 1317, /* Number of elements */<br/>+ 1367, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 1, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -3839,6 +4084,10 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x85C,<br/> 0x8A0,<br/> 0x8B5,<br/>+ 0x8B6,<br/>+ 0x8BE,<br/>+ 0x8D4,<br/>+ 0x8E2,<br/> 0x8E3,<br/> 0x964,<br/> 0x966,<br/>@@ -4017,7 +4266,7 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0xC64,<br/> 0xC66,<br/> 0xC70,<br/>- 0xC81,<br/>+ 0xC80,<br/> 0xC84,<br/> 0xC85,<br/> 0xC8D,<br/>@@ -4059,7 +4308,7 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0xD49,<br/> 0xD4A,<br/> 0xD4F,<br/>- 0xD57,<br/>+ 0xD54,<br/> 0xD58,<br/> 0xD5F,<br/> 0xD64,<br/>@@ -4295,6 +4544,8 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1C4A,<br/> 0x1C4D,<br/> 0x1C7E,<br/>+ 0x1C80,<br/>+ 0x1C89,<br/> 0x1CD0,<br/> 0x1CD3,<br/> 0x1CD4,<br/>@@ -4303,7 +4554,7 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1CFA,<br/> 0x1D00,<br/> 0x1DF6,<br/>- 0x1DFC,<br/>+ 0x1DFB,<br/> 0x1F16,<br/> 0x1F18,<br/> 0x1F1E,<br/>@@ -4472,7 +4723,7 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA722,<br/> 0xA789,<br/> 0xA78B,<br/>- 0xA7AE,<br/>+ 0xA7AF,<br/> 0xA7B0,<br/> 0xA7B8,<br/> 0xA7F7,<br/>@@ -4480,7 +4731,7 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA840,<br/> 0xA874,<br/> 0xA880,<br/>- 0xA8C5,<br/>+ 0xA8C6,<br/> 0xA8D0,<br/> 0xA8DA,<br/> 0xA8E0,<br/>@@ -4657,6 +4908,10 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1049E,<br/> 0x104A0,<br/> 0x104AA,<br/>+ 0x104B0,<br/>+ 0x104D4,<br/>+ 0x104D8,<br/>+ 0x104FC,<br/> 0x10500,<br/> 0x10528,<br/> 0x10530,<br/>@@ -4761,6 +5016,8 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11212,<br/> 0x11213,<br/> 0x11238,<br/>+ 0x1123E,<br/>+ 0x1123F,<br/> 0x11280,<br/> 0x11287,<br/> 0x11288,<br/>@@ -4805,6 +5062,10 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1136D,<br/> 0x11370,<br/> 0x11375,<br/>+ 0x11400,<br/>+ 0x1144B,<br/>+ 0x11450,<br/>+ 0x1145A,<br/> 0x11480,<br/> 0x114C6,<br/> 0x114C7,<br/>@@ -4839,6 +5100,20 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11900,<br/> 0x11AC0,<br/> 0x11AF9,<br/>+ 0x11C00,<br/>+ 0x11C09,<br/>+ 0x11C0A,<br/>+ 0x11C37,<br/>+ 0x11C38,<br/>+ 0x11C41,<br/>+ 0x11C50,<br/>+ 0x11C5A,<br/>+ 0x11C72,<br/>+ 0x11C90,<br/>+ 0x11C92,<br/>+ 0x11CA8,<br/>+ 0x11CA9,<br/>+ 0x11CB7,<br/> 0x12000,<br/> 0x1239A,<br/> 0x12400,<br/>@@ -4875,6 +5150,12 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x16F7F,<br/> 0x16F8F,<br/> 0x16FA0,<br/>+ 0x16FE0,<br/>+ 0x16FE1,<br/>+ 0x17000,<br/>+ 0x187ED,<br/>+ 0x18800,<br/>+ 0x18AF3,<br/> 0x1B000,<br/> 0x1B002,<br/> 0x1BC00,<br/>@@ -4973,10 +5254,24 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1DAA0,<br/> 0x1DAA1,<br/> 0x1DAB0,<br/>+ 0x1E000,<br/>+ 0x1E007,<br/>+ 0x1E008,<br/>+ 0x1E019,<br/>+ 0x1E01B,<br/>+ 0x1E022,<br/>+ 0x1E023,<br/>+ 0x1E025,<br/>+ 0x1E026,<br/>+ 0x1E02B,<br/> 0x1E800,<br/> 0x1E8C5,<br/> 0x1E8D0,<br/> 0x1E8D7,<br/>+ 0x1E900,<br/>+ 0x1E94B,<br/>+ 0x1E950,<br/>+ 0x1E95A,<br/> 0x1EE00,<br/> 0x1EE04,<br/> 0x1EE05,<br/>@@ -5058,7 +5353,7 @@ static const UV _Perl_IDCont_invlist[] = { /* for ASCII/Latin1 */<br/> };<br/> <br/> static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/>- 1129, /* Number of elements */<br/>+ 1161, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 1, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -5163,6 +5458,8 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0x859,<br/> 0x8A0,<br/> 0x8B5,<br/>+ 0x8B6,<br/>+ 0x8BE,<br/> 0x904,<br/> 0x93A,<br/> 0x93D,<br/>@@ -5291,6 +5588,8 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0xC5B,<br/> 0xC60,<br/> 0xC62,<br/>+ 0xC80,<br/>+ 0xC81,<br/> 0xC85,<br/> 0xC8D,<br/> 0xC8E,<br/>@@ -5319,6 +5618,8 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0xD3E,<br/> 0xD4E,<br/> 0xD4F,<br/>+ 0xD54,<br/>+ 0xD57,<br/> 0xD5F,<br/> 0xD62,<br/> 0xD7A,<br/>@@ -5513,6 +5814,8 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1C50,<br/> 0x1C5A,<br/> 0x1C7E,<br/>+ 0x1C80,<br/>+ 0x1C89,<br/> 0x1CE9,<br/> 0x1CED,<br/> 0x1CEE,<br/>@@ -5680,7 +5983,7 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA722,<br/> 0xA789,<br/> 0xA78B,<br/>- 0xA7AE,<br/>+ 0xA7AF,<br/> 0xA7B0,<br/> 0xA7B8,<br/> 0xA7F7,<br/>@@ -5867,6 +6170,10 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0x103D6,<br/> 0x10400,<br/> 0x1049E,<br/>+ 0x104B0,<br/>+ 0x104D4,<br/>+ 0x104D8,<br/>+ 0x104FC,<br/> 0x10500,<br/> 0x10528,<br/> 0x10530,<br/>@@ -5989,6 +6296,10 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11351,<br/> 0x1135D,<br/> 0x11362,<br/>+ 0x11400,<br/>+ 0x11435,<br/>+ 0x11447,<br/>+ 0x1144B,<br/> 0x11480,<br/> 0x114B0,<br/> 0x114C4,<br/>@@ -6013,6 +6324,14 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11900,<br/> 0x11AC0,<br/> 0x11AF9,<br/>+ 0x11C00,<br/>+ 0x11C09,<br/>+ 0x11C0A,<br/>+ 0x11C2F,<br/>+ 0x11C40,<br/>+ 0x11C41,<br/>+ 0x11C72,<br/>+ 0x11C90,<br/> 0x12000,<br/> 0x1239A,<br/> 0x12400,<br/>@@ -6043,6 +6362,12 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0x16F51,<br/> 0x16F93,<br/> 0x16FA0,<br/>+ 0x16FE0,<br/>+ 0x16FE1,<br/>+ 0x17000,<br/>+ 0x187ED,<br/>+ 0x18800,<br/>+ 0x18AF3,<br/> 0x1B000,<br/> 0x1B002,<br/> 0x1BC00,<br/>@@ -6115,6 +6440,8 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1D7CC,<br/> 0x1E800,<br/> 0x1E8C5,<br/>+ 0x1E900,<br/>+ 0x1E944,<br/> 0x1EE00,<br/> 0x1EE04,<br/> 0x1EE05,<br/>@@ -6198,7 +6525,7 @@ static const UV _Perl_IDStart_invlist[] = { /* for ASCII/Latin1 */<br/> #if defined(PERL_IN_PERL_C)<br/> <br/> static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/>- 2156, /* Number of elements */<br/>+ 2267, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 0, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -6344,6 +6671,8 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x82E,<br/> 0x859,<br/> 0x85C,<br/>+ 0x8D4,<br/>+ 0x8E2,<br/> 0x8E3,<br/> 0x904,<br/> 0x93A,<br/>@@ -6641,6 +6970,8 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x180F,<br/> 0x1810,<br/> 0x181A,<br/>+ 0x1885,<br/>+ 0x1887,<br/> 0x18A9,<br/> 0x18AA,<br/> 0x1920,<br/>@@ -6705,7 +7036,7 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1CFA,<br/> 0x1DC0,<br/> 0x1DF6,<br/>- 0x1DFC,<br/>+ 0x1DFB,<br/> 0x1E00,<br/> 0x1FFD,<br/> 0x1FFE,<br/>@@ -6714,6 +7045,8 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x2008,<br/> 0x200B,<br/> 0x200C,<br/>+ 0x200D,<br/>+ 0x200E,<br/> 0x2010,<br/> 0x2011,<br/> 0x2012,<br/>@@ -6796,6 +7129,8 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x2618,<br/> 0x2619,<br/> 0x261A,<br/>+ 0x261D,<br/>+ 0x261E,<br/> 0x2620,<br/> 0x2639,<br/> 0x263C,<br/>@@ -6822,15 +7157,19 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x26F1,<br/> 0x26F6,<br/> 0x26F7,<br/>+ 0x26F9,<br/>+ 0x26FA,<br/> 0x26FB,<br/> 0x26FD,<br/> 0x2705,<br/> 0x2708,<br/>+ 0x270A,<br/> 0x270E,<br/> 0x275B,<br/> 0x2761,<br/> 0x2762,<br/> 0x2764,<br/>+ 0x2765,<br/> 0x2768,<br/> 0x2769,<br/> 0x276A,<br/>@@ -6935,6 +7274,7 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x2E40,<br/> 0x2E42,<br/> 0x2E43,<br/>+ 0x2E45,<br/> 0x2E80,<br/> 0x2E9A,<br/> 0x2E9B,<br/>@@ -7085,7 +7425,7 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA880,<br/> 0xA882,<br/> 0xA8B4,<br/>- 0xA8C5,<br/>+ 0xA8C6,<br/> 0xA8CE,<br/> 0xA8D0,<br/> 0xA8DA,<br/>@@ -8060,6 +8400,15 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xFF71,<br/> 0xFF9E,<br/> 0xFFA0,<br/>+ 0xFFBF,<br/>+ 0xFFC2,<br/>+ 0xFFC8,<br/>+ 0xFFCA,<br/>+ 0xFFD0,<br/>+ 0xFFD2,<br/>+ 0xFFD8,<br/>+ 0xFFDA,<br/>+ 0xFFDD,<br/> 0xFFE0,<br/> 0xFFE1,<br/> 0xFFE2,<br/>@@ -8152,6 +8501,8 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1123A,<br/> 0x1123B,<br/> 0x1123D,<br/>+ 0x1123E,<br/>+ 0x1123F,<br/> 0x112A9,<br/> 0x112AA,<br/> 0x112DF,<br/>@@ -8176,6 +8527,14 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1136D,<br/> 0x11370,<br/> 0x11375,<br/>+ 0x11435,<br/>+ 0x11447,<br/>+ 0x1144B,<br/>+ 0x1144F,<br/>+ 0x11450,<br/>+ 0x1145A,<br/>+ 0x1145B,<br/>+ 0x1145C,<br/> 0x114B0,<br/> 0x114C4,<br/> 0x114D0,<br/>@@ -8196,6 +8555,8 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11643,<br/> 0x11650,<br/> 0x1165A,<br/>+ 0x11660,<br/>+ 0x1166D,<br/> 0x116AB,<br/> 0x116B8,<br/> 0x116C0,<br/>@@ -8208,6 +8569,21 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1173F,<br/> 0x118E0,<br/> 0x118EA,<br/>+ 0x11C2F,<br/>+ 0x11C37,<br/>+ 0x11C38,<br/>+ 0x11C40,<br/>+ 0x11C41,<br/>+ 0x11C46,<br/>+ 0x11C50,<br/>+ 0x11C5A,<br/>+ 0x11C70,<br/>+ 0x11C71,<br/>+ 0x11C72,<br/>+ 0x11C92,<br/>+ 0x11CA8,<br/>+ 0x11CA9,<br/>+ 0x11CB7,<br/> 0x12470,<br/> 0x12475,<br/> 0x13258,<br/>@@ -8244,6 +8620,12 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x16F7F,<br/> 0x16F8F,<br/> 0x16F93,<br/>+ 0x16FE0,<br/>+ 0x16FE1,<br/>+ 0x17000,<br/>+ 0x187ED,<br/>+ 0x18800,<br/>+ 0x18AF3,<br/> 0x1B000,<br/> 0x1B002,<br/> 0x1BC9D,<br/>@@ -8276,44 +8658,73 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1DAA0,<br/> 0x1DAA1,<br/> 0x1DAB0,<br/>+ 0x1E000,<br/>+ 0x1E007,<br/>+ 0x1E008,<br/>+ 0x1E019,<br/>+ 0x1E01B,<br/>+ 0x1E022,<br/>+ 0x1E023,<br/>+ 0x1E025,<br/>+ 0x1E026,<br/>+ 0x1E02B,<br/> 0x1E8D0,<br/> 0x1E8D7,<br/>+ 0x1E944,<br/>+ 0x1E94B,<br/>+ 0x1E950,<br/>+ 0x1E95A,<br/>+ 0x1E95E,<br/>+ 0x1E960,<br/> 0x1F000,<br/>- 0x1F02C,<br/>- 0x1F030,<br/>- 0x1F094,<br/>- 0x1F0A0,<br/>- 0x1F0AF,<br/>- 0x1F0B1,<br/>- 0x1F0C0,<br/>- 0x1F0C1,<br/>- 0x1F0D0,<br/>- 0x1F0D1,<br/>- 0x1F0F6,<br/>+ 0x1F100,<br/>+ 0x1F10D,<br/>+ 0x1F110,<br/>+ 0x1F12F,<br/>+ 0x1F130,<br/>+ 0x1F16C,<br/>+ 0x1F170,<br/>+ 0x1F1AD,<br/> 0x1F1E6,<br/> 0x1F200,<br/>- 0x1F203,<br/>- 0x1F210,<br/>- 0x1F23B,<br/>- 0x1F240,<br/>- 0x1F249,<br/>- 0x1F250,<br/>- 0x1F252,<br/>- 0x1F300,<br/>+ 0x1F385,<br/>+ 0x1F386,<br/> 0x1F39C,<br/> 0x1F39E,<br/> 0x1F3B5,<br/> 0x1F3B7,<br/> 0x1F3BC,<br/> 0x1F3BD,<br/>+ 0x1F3C3,<br/>+ 0x1F3C5,<br/>+ 0x1F3CA,<br/>+ 0x1F3CC,<br/> 0x1F3FB,<br/> 0x1F400,<br/>+ 0x1F442,<br/>+ 0x1F444,<br/>+ 0x1F446,<br/>+ 0x1F451,<br/>+ 0x1F466,<br/>+ 0x1F46A,<br/>+ 0x1F46E,<br/>+ 0x1F46F,<br/>+ 0x1F470,<br/>+ 0x1F479,<br/>+ 0x1F47C,<br/>+ 0x1F47D,<br/>+ 0x1F481,<br/>+ 0x1F484,<br/>+ 0x1F485,<br/>+ 0x1F488,<br/> 0x1F4A0,<br/> 0x1F4A1,<br/> 0x1F4A2,<br/> 0x1F4A3,<br/> 0x1F4A4,<br/> 0x1F4A5,<br/>+ 0x1F4AA,<br/>+ 0x1F4AB,<br/> 0x1F4AF,<br/> 0x1F4B0,<br/> 0x1F4B1,<br/>@@ -8324,30 +8735,57 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1F525,<br/> 0x1F532,<br/> 0x1F54A,<br/>+ 0x1F575,<br/>+ 0x1F576,<br/> 0x1F57A,<br/> 0x1F57B,<br/>- 0x1F5A4,<br/>- 0x1F5A5,<br/>+ 0x1F590,<br/>+ 0x1F591,<br/>+ 0x1F595,<br/>+ 0x1F597,<br/> 0x1F5D4,<br/> 0x1F5DC,<br/> 0x1F5F4,<br/> 0x1F5FA,<br/>+ 0x1F645,<br/>+ 0x1F648,<br/>+ 0x1F64B,<br/> 0x1F650,<br/> 0x1F676,<br/> 0x1F679,<br/> 0x1F67C,<br/> 0x1F680,<br/>- 0x1F6D1,<br/>- 0x1F6E0,<br/>- 0x1F6ED,<br/>- 0x1F6F0,<br/>- 0x1F6F4,<br/>- 0x1F910,<br/>- 0x1F919,<br/>- 0x1F980,<br/>- 0x1F985,<br/>- 0x1F9C0,<br/>- 0x1F9C1,<br/>+ 0x1F6A3,<br/>+ 0x1F6A4,<br/>+ 0x1F6B4,<br/>+ 0x1F6B7,<br/>+ 0x1F6C0,<br/>+ 0x1F6C1,<br/>+ 0x1F700,<br/>+ 0x1F774,<br/>+ 0x1F780,<br/>+ 0x1F7D5,<br/>+ 0x1F800,<br/>+ 0x1F80C,<br/>+ 0x1F810,<br/>+ 0x1F848,<br/>+ 0x1F850,<br/>+ 0x1F85A,<br/>+ 0x1F860,<br/>+ 0x1F888,<br/>+ 0x1F890,<br/>+ 0x1F8AE,<br/>+ 0x1F918,<br/>+ 0x1F91F,<br/>+ 0x1F926,<br/>+ 0x1F927,<br/>+ 0x1F930,<br/>+ 0x1F931,<br/>+ 0x1F933,<br/>+ 0x1F93A,<br/>+ 0x1F93C,<br/>+ 0x1F93F,<br/>+ 0x1FFFE,<br/> 0x20000,<br/> 0x2FFFE,<br/> 0x30000,<br/>@@ -8364,7 +8802,7 @@ static const UV _Perl_LB_invlist[] = { /* for ASCII/Latin1 */<br/> <br/> #if defined(PERL_IN_REGEXEC_C)<br/> <br/>-#define LB_ENUM_COUNT 36<br/>+#define LB_ENUM_COUNT 39<br/> <br/> typedef enum {<br/> LB_Alphabetic = 0,<br/>@@ -8377,32 +8815,35 @@ typedef enum {<br/> LB_Close_Punctuation = 7,<br/> LB_Combining_Mark = 8,<br/> LB_Contingent_Break = 9,<br/>- LB_Exclamation = 10,<br/>- LB_Glue = 11,<br/>- LB_H2 = 12,<br/>- LB_H3 = 13,<br/>- LB_Hebrew_Letter = 14,<br/>- LB_Hyphen = 15,<br/>- LB_Ideographic = 16,<br/>- LB_Infix_Numeric = 17,<br/>- LB_Inseparable = 18,<br/>- LB_JL = 19,<br/>- LB_JT = 20,<br/>- LB_JV = 21,<br/>- LB_Line_Feed = 22,<br/>- LB_Mandatory_Break = 23,<br/>- LB_Next_Line = 24,<br/>- LB_Nonstarter = 25,<br/>- LB_Numeric = 26,<br/>- LB_Open_Punctuation = 27,<br/>- LB_Postfix_Numeric = 28,<br/>- LB_Prefix_Numeric = 29,<br/>- LB_Quotation = 30,<br/>- LB_Regional_Indicator = 31,<br/>- LB_Space = 32,<br/>- LB_Word_Joiner = 33,<br/>- LB_ZWSpace = 34,<br/>- LB_EDGE = 35<br/>+ LB_E_Base = 10,<br/>+ LB_E_Modifier = 11,<br/>+ LB_Exclamation = 12,<br/>+ LB_Glue = 13,<br/>+ LB_H2 = 14,<br/>+ LB_H3 = 15,<br/>+ LB_Hebrew_Letter = 16,<br/>+ LB_Hyphen = 17,<br/>+ LB_Ideographic = 18,<br/>+ LB_Infix_Numeric = 19,<br/>+ LB_Inseparable = 20,<br/>+ LB_JL = 21,<br/>+ LB_JT = 22,<br/>+ LB_JV = 23,<br/>+ LB_Line_Feed = 24,<br/>+ LB_Mandatory_Break = 25,<br/>+ LB_Next_Line = 26,<br/>+ LB_Nonstarter = 27,<br/>+ LB_Numeric = 28,<br/>+ LB_Open_Punctuation = 29,<br/>+ LB_Postfix_Numeric = 30,<br/>+ LB_Prefix_Numeric = 31,<br/>+ LB_Quotation = 32,<br/>+ LB_Regional_Indicator = 33,<br/>+ LB_Space = 34,<br/>+ LB_Word_Joiner = 35,<br/>+ LB_ZWJ = 36,<br/>+ LB_ZWSpace = 37,<br/>+ LB_EDGE = 38<br/> } LB_enum;<br/> <br/> static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/>@@ -8557,6 +8998,8 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Combining_Mark,<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/> LB_Break_After,<br/> LB_Numeric,<br/> LB_Alphabetic,<br/>@@ -8851,6 +9294,8 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/> LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/> LB_Exclamation,<br/> LB_Numeric,<br/> LB_Alphabetic,<br/>@@ -8918,6 +9363,8 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Break_After,<br/> LB_ZWSpace,<br/> LB_Combining_Mark,<br/>+ LB_ZWJ,<br/>+ LB_Combining_Mark,<br/> LB_Break_After,<br/> LB_Glue,<br/> LB_Break_After,<br/>@@ -9000,6 +9447,8 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/>@@ -9026,14 +9475,18 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/> LB_Alphabetic,<br/> LB_Quotation,<br/> LB_Alphabetic,<br/> LB_Exclamation,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Open_Punctuation,<br/> LB_Close_Punctuation,<br/>@@ -9138,6 +9591,7 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Break_After,<br/> LB_Open_Punctuation,<br/>+ LB_Break_After,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/>@@ -10259,10 +10713,19 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Open_Punctuation,<br/> LB_Close_Punctuation,<br/> LB_Nonstarter,<br/>- LB_Alphabetic,<br/>+ LB_Ideographic,<br/> LB_Nonstarter,<br/>- LB_Alphabetic,<br/>+ LB_Ideographic,<br/> LB_Nonstarter,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Postfix_Numeric,<br/> LB_Prefix_Numeric,<br/>@@ -10356,6 +10819,8 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Break_After,<br/> LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/> LB_Break_After,<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/>@@ -10382,6 +10847,14 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/> LB_Alphabetic,<br/>+ LB_Break_After,<br/>+ LB_Alphabetic,<br/>+ LB_Numeric,<br/>+ LB_Alphabetic,<br/>+ LB_Break_After,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/> LB_Numeric,<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/>@@ -10400,6 +10873,8 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Numeric,<br/> LB_Alphabetic,<br/>+ LB_Break_Before,<br/>+ LB_Alphabetic,<br/> LB_Combining_Mark,<br/> LB_Alphabetic,<br/> LB_Numeric,<br/>@@ -10412,6 +10887,21 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Numeric,<br/> LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Break_After,<br/>+ LB_Alphabetic,<br/>+ LB_Numeric,<br/>+ LB_Alphabetic,<br/>+ LB_Break_Before,<br/>+ LB_Exclamation,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/> LB_Break_After,<br/> LB_Alphabetic,<br/> LB_Open_Punctuation,<br/>@@ -10448,6 +10938,12 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/> LB_Alphabetic,<br/>+ LB_Nonstarter,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/>@@ -10482,9 +10978,21 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Combining_Mark,<br/> LB_Alphabetic,<br/>- LB_Ideographic,<br/>+ LB_Combining_Mark,<br/> LB_Alphabetic,<br/>- LB_Ideographic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Combining_Mark,<br/>+ LB_Alphabetic,<br/>+ LB_Numeric,<br/>+ LB_Alphabetic,<br/>+ LB_Open_Punctuation,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/>@@ -10494,9 +11002,10 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/>+ LB_Ideographic,<br/> LB_Regional_Indicator,<br/> LB_Ideographic,<br/>- LB_Alphabetic,<br/>+ LB_E_Base,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>@@ -10504,17 +11013,27 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>- LB_Alphabetic,<br/>+ LB_E_Base,<br/> LB_Ideographic,<br/>- LB_Alphabetic,<br/>+ LB_E_Base,<br/> LB_Ideographic,<br/>- LB_Alphabetic,<br/>+ LB_E_Modifier,<br/> LB_Ideographic,<br/>- LB_Alphabetic,<br/>+ LB_E_Base,<br/> LB_Ideographic,<br/>- LB_Alphabetic,<br/>+ LB_E_Base,<br/> LB_Ideographic,<br/>- LB_Alphabetic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>@@ -10522,6 +11041,8 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/>@@ -10532,15 +11053,36 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/> LB_Alphabetic,<br/> LB_Quotation,<br/> LB_Nonstarter,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/>+ LB_Alphabetic,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/>@@ -10551,6 +11093,16 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/>+ LB_E_Base,<br/>+ LB_Ideographic,<br/> LB_Alphabetic,<br/> LB_Ideographic,<br/> LB_Alphabetic,<br/>@@ -10569,7 +11121,7 @@ static const LB_enum _Perl_LB_invmap[] = { /* for ASCII/Latin1 */<br/> #if defined(PERL_IN_PERL_C)<br/> <br/> static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/>- 2896, /* Number of elements */<br/>+ 2957, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 0, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -11276,6 +11828,10 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x85C,<br/> 0x8A0,<br/> 0x8B5,<br/>+ 0x8B6,<br/>+ 0x8BE,<br/>+ 0x8D4,<br/>+ 0x8E2,<br/> 0x8E3,<br/> 0x904,<br/> 0x93A,<br/>@@ -11480,6 +12036,7 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xC64,<br/> 0xC66,<br/> 0xC70,<br/>+ 0xC80,<br/> 0xC81,<br/> 0xC84,<br/> 0xC85,<br/>@@ -11527,6 +12084,7 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xD4A,<br/> 0xD4E,<br/> 0xD4F,<br/>+ 0xD54,<br/> 0xD57,<br/> 0xD58,<br/> 0xD5F,<br/>@@ -11766,6 +12324,8 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1820,<br/> 0x1878,<br/> 0x1880,<br/>+ 0x1885,<br/>+ 0x1887,<br/> 0x18A9,<br/> 0x18AA,<br/> 0x18AB,<br/>@@ -11839,6 +12399,7 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1C5A,<br/> 0x1C7E,<br/> 0x1C80,<br/>+ 0x1C89,<br/> 0x1CD0,<br/> 0x1CD3,<br/> 0x1CD4,<br/>@@ -11853,7 +12414,7 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1D00,<br/> 0x1DC0,<br/> 0x1DF6,<br/>- 0x1DFC,<br/>+ 0x1DFB,<br/> 0x1E00,<br/> 0x1E01,<br/> 0x1E02,<br/>@@ -12697,7 +13258,7 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA7A8,<br/> 0xA7A9,<br/> 0xA7AA,<br/>- 0xA7AE,<br/>+ 0xA7AF,<br/> 0xA7B0,<br/> 0xA7B5,<br/> 0xA7B6,<br/>@@ -12721,7 +13282,7 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA880,<br/> 0xA882,<br/> 0xA8B4,<br/>- 0xA8C5,<br/>+ 0xA8C6,<br/> 0xA8CE,<br/> 0xA8D0,<br/> 0xA8DA,<br/>@@ -12969,6 +13530,10 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1049E,<br/> 0x104A0,<br/> 0x104AA,<br/>+ 0x104B0,<br/>+ 0x104D4,<br/>+ 0x104D8,<br/>+ 0x104FC,<br/> 0x10500,<br/> 0x10528,<br/> 0x10530,<br/>@@ -13103,6 +13668,8 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1123A,<br/> 0x1123B,<br/> 0x1123D,<br/>+ 0x1123E,<br/>+ 0x1123F,<br/> 0x11280,<br/> 0x11287,<br/> 0x11288,<br/>@@ -13152,6 +13719,13 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1136D,<br/> 0x11370,<br/> 0x11375,<br/>+ 0x11400,<br/>+ 0x11435,<br/>+ 0x11447,<br/>+ 0x1144B,<br/>+ 0x1144D,<br/>+ 0x11450,<br/>+ 0x1145A,<br/> 0x11480,<br/> 0x114B0,<br/> 0x114C4,<br/>@@ -13200,6 +13774,23 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11900,<br/> 0x11AC0,<br/> 0x11AF9,<br/>+ 0x11C00,<br/>+ 0x11C09,<br/>+ 0x11C0A,<br/>+ 0x11C2F,<br/>+ 0x11C37,<br/>+ 0x11C38,<br/>+ 0x11C40,<br/>+ 0x11C41,<br/>+ 0x11C43,<br/>+ 0x11C50,<br/>+ 0x11C5A,<br/>+ 0x11C72,<br/>+ 0x11C90,<br/>+ 0x11C92,<br/>+ 0x11CA8,<br/>+ 0x11CA9,<br/>+ 0x11CB7,<br/> 0x12000,<br/> 0x1239A,<br/> 0x12400,<br/>@@ -13244,6 +13835,12 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x16F8F,<br/> 0x16F93,<br/> 0x16FA0,<br/>+ 0x16FE0,<br/>+ 0x16FE1,<br/>+ 0x17000,<br/>+ 0x187ED,<br/>+ 0x18800,<br/>+ 0x18AF3,<br/> 0x1B000,<br/> 0x1B002,<br/> 0x1BC00,<br/>@@ -13375,10 +13972,26 @@ static const UV _Perl_SB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1DAA0,<br/> 0x1DAA1,<br/> 0x1DAB0,<br/>+ 0x1E000,<br/>+ 0x1E007,<br/>+ 0x1E008,<br/>+ 0x1E019,<br/>+ 0x1E01B,<br/>+ 0x1E022,<br/>+ 0x1E023,<br/>+ 0x1E025,<br/>+ 0x1E026,<br/>+ 0x1E02B,<br/> 0x1E800,<br/> 0x1E8C5,<br/> 0x1E8D0,<br/> 0x1E8D7,<br/>+ 0x1E900,<br/>+ 0x1E922,<br/>+ 0x1E944,<br/>+ 0x1E94B,<br/>+ 0x1E950,<br/>+ 0x1E95A,<br/> 0x1EE00,<br/> 0x1EE04,<br/> 0x1EE05,<br/>@@ -14200,6 +14813,10 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/>+ SB_OLetter,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_Format,<br/> SB_Extend,<br/> SB_OLetter,<br/> SB_Extend,<br/>@@ -14404,6 +15021,7 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Other,<br/> SB_Numeric,<br/> SB_Other,<br/>+ SB_OLetter,<br/> SB_Extend,<br/> SB_Other,<br/> SB_OLetter,<br/>@@ -14451,6 +15069,7 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Extend,<br/> SB_OLetter,<br/> SB_Other,<br/>+ SB_OLetter,<br/> SB_Extend,<br/> SB_Other,<br/> SB_OLetter,<br/>@@ -14692,6 +15311,8 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_OLetter,<br/> SB_Extend,<br/> SB_OLetter,<br/>+ SB_Extend,<br/>+ SB_OLetter,<br/> SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/>@@ -14762,6 +15383,7 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Numeric,<br/> SB_OLetter,<br/> SB_STerm,<br/>+ SB_Lower,<br/> SB_Other,<br/> SB_Extend,<br/> SB_Other,<br/>@@ -15893,6 +16515,10 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Other,<br/> SB_Numeric,<br/> SB_Other,<br/>+ SB_Upper,<br/>+ SB_Other,<br/>+ SB_Lower,<br/>+ SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/> SB_OLetter,<br/>@@ -16027,6 +16653,8 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Other,<br/> SB_STerm,<br/> SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/> SB_OLetter,<br/>@@ -16079,6 +16707,13 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_OLetter,<br/> SB_Extend,<br/> SB_OLetter,<br/>+ SB_STerm,<br/>+ SB_Other,<br/>+ SB_Numeric,<br/>+ SB_Other,<br/>+ SB_OLetter,<br/>+ SB_Extend,<br/>+ SB_OLetter,<br/> SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/>@@ -16127,6 +16762,23 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_OLetter,<br/> SB_Other,<br/> SB_OLetter,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_OLetter,<br/>+ SB_STerm,<br/>+ SB_Other,<br/>+ SB_Numeric,<br/>+ SB_Other,<br/>+ SB_OLetter,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_OLetter,<br/>+ SB_Other,<br/>+ SB_OLetter,<br/> SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/>@@ -16178,6 +16830,12 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/>+ SB_OLetter,<br/>+ SB_Other,<br/>+ SB_OLetter,<br/>+ SB_Other,<br/>+ SB_OLetter,<br/>+ SB_Other,<br/> SB_Extend,<br/> SB_STerm,<br/> SB_Format,<br/>@@ -16299,10 +16957,26 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Other,<br/> SB_Extend,<br/> SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_Extend,<br/>+ SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/> SB_Extend,<br/> SB_Other,<br/>+ SB_Upper,<br/>+ SB_Lower,<br/>+ SB_Extend,<br/>+ SB_Other,<br/>+ SB_Numeric,<br/>+ SB_Other,<br/> SB_OLetter,<br/> SB_Other,<br/> SB_OLetter,<br/>@@ -16389,7 +17063,7 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> SB_Other,<br/> SB_Format,<br/> SB_Other,<br/>- SB_Format,<br/>+ SB_Extend,<br/> SB_Other,<br/> SB_Extend,<br/> SB_Other<br/>@@ -16400,7 +17074,7 @@ static const SB_enum _Perl_SB_invmap[] = { /* for ASCII/Latin1 */<br/> #if defined(PERL_IN_PERL_C)<br/> <br/> static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/>- 1535, /* Number of elements */<br/>+ 1657, /* Number of elements */<br/> 148565664, /* Version and data structure type */<br/> 0, /* 0 if the list starts at 0;<br/> 1 if it starts at the element beyond 0 */<br/>@@ -16575,6 +17249,10 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x85C,<br/> 0x8A0,<br/> 0x8B5,<br/>+ 0x8B6,<br/>+ 0x8BE,<br/>+ 0x8D4,<br/>+ 0x8E2,<br/> 0x8E3,<br/> 0x904,<br/> 0x93A,<br/>@@ -16779,6 +17457,7 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xC64,<br/> 0xC66,<br/> 0xC70,<br/>+ 0xC80,<br/> 0xC81,<br/> 0xC84,<br/> 0xC85,<br/>@@ -16826,6 +17505,7 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xD4A,<br/> 0xD4E,<br/> 0xD4F,<br/>+ 0xD54,<br/> 0xD57,<br/> 0xD58,<br/> 0xD5F,<br/>@@ -17013,6 +17693,8 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1820,<br/> 0x1878,<br/> 0x1880,<br/>+ 0x1885,<br/>+ 0x1887,<br/> 0x18A9,<br/> 0x18AA,<br/> 0x18AB,<br/>@@ -17068,6 +17750,8 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1C50,<br/> 0x1C5A,<br/> 0x1C7E,<br/>+ 0x1C80,<br/>+ 0x1C89,<br/> 0x1CD0,<br/> 0x1CD3,<br/> 0x1CD4,<br/>@@ -17082,7 +17766,7 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1D00,<br/> 0x1DC0,<br/> 0x1DF6,<br/>- 0x1DFC,<br/>+ 0x1DFB,<br/> 0x1E00,<br/> 0x1F16,<br/> 0x1F18,<br/>@@ -17124,6 +17808,7 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x2000,<br/> 0x200B,<br/> 0x200C,<br/>+ 0x200D,<br/> 0x200E,<br/> 0x2010,<br/> 0x2018,<br/>@@ -17184,6 +17869,14 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x2189,<br/> 0x24B6,<br/> 0x24EA,<br/>+ 0x261D,<br/>+ 0x261E,<br/>+ 0x26F9,<br/>+ 0x26FA,<br/>+ 0x270A,<br/>+ 0x270E,<br/>+ 0x2764,<br/>+ 0x2765,<br/> 0x2C00,<br/> 0x2C2F,<br/> 0x2C30,<br/>@@ -17281,7 +17974,7 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA722,<br/> 0xA789,<br/> 0xA78B,<br/>- 0xA7AE,<br/>+ 0xA7AF,<br/> 0xA7B0,<br/> 0xA7B8,<br/> 0xA7F7,<br/>@@ -17298,7 +17991,7 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0xA880,<br/> 0xA882,<br/> 0xA8B4,<br/>- 0xA8C5,<br/>+ 0xA8C6,<br/> 0xA8D0,<br/> 0xA8DA,<br/> 0xA8E0,<br/>@@ -17508,6 +18201,10 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x1049E,<br/> 0x104A0,<br/> 0x104AA,<br/>+ 0x104B0,<br/>+ 0x104D4,<br/>+ 0x104D8,<br/>+ 0x104FC,<br/> 0x10500,<br/> 0x10528,<br/> 0x10530,<br/>@@ -17629,6 +18326,8 @@ static const UV _Perl_WB_invlist[] = { /* for ASCII/Latin1 */<br/> 0x11213,<br/> 0x1122C,<br/>**** PATCH TRUNCATED AT 2000 LINES -- 39826 NOT SHOWN ****<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47484.html Wed, 22 Jun 2016 00:11:01 +0000 [perl.git] branch blead, updated. v5.25.2-19-gc92b26e by Sawyer X In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/c92b26e114702cae63b26bfe6517283589a04296?hp=21a5c8db3a272de4e9aec0faf8402cb19ce8dbc9&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit c92b26e114702cae63b26bfe6517283589a04296<br/>Author: Alex Vandiver &lt;alex@chmrr.net&gt;<br/>Date: Sat May 21 01:21:29 2016 -0700<br/><br/> RT now imports new tags automatically<br/> <br/> New perl releases are detected via an every-hour cron job, which will<br/> update the relevant custom fields. This step is thus now unnecessary.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> Porting/release_managers_guide.pod | 12 ------------<br/> 1 file changed, 12 deletions(-)<br/><br/>diff --git a/Porting/release_managers_guide.pod b/Porting/release_managers_guide.pod<br/>index a81e174..56b8847 100644<br/>--- a/Porting/release_managers_guide.pod<br/>+++ b/Porting/release_managers_guide.pod<br/>@@ -1385,18 +1385,6 @@ F&lt;perlhist.pod&gt; on blead. e.g.<br/> <br/> 5.8.9 2008-Dec-14<br/> <br/>-=head3 bump RT version number<br/>-<br/>-Log into http://rt.perl.org/ and check whether the new version is in the RT<br/>-fields C&lt;Perl Version&gt; and C&lt;Fixed In&gt;. The easiest way to determine this is to<br/>-open up any ticket for modification and check the drop downs next to the<br/>-C&lt;Perl Version&gt; and C&lt;Fixed In&gt; labels.<br/>-<br/>-Here, try this link: L&lt;https://rt.perl.org/Ticket/Modify.html?id=10000&gt;<br/>-<br/>-If the new version is not listed there, send an email to C&lt;perlbug-admin at<br/>-perl.org&gt; requesting this.<br/>-<br/> =head3 Relax!<br/> <br/> I&lt;You MUST RETIRE to your preferred PUB, CAFE or SEASIDE VILLA for some<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47483.html Tue, 21 Jun 2016 21:15:42 +0000 [perl.git] branch smoke-me/no_xhv_fill, created.v5.25.2-22-g59dc1ad by Yves Orton In perl.git, the branch smoke-me/no_xhv_fill has been created<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/59dc1addcceb34465dde8cda10dd17519cc9e5fb?hp=0000000000000000000000000000000000000000&gt;<br/><br/> at 59dc1addcceb34465dde8cda10dd17519cc9e5fb (commit)<br/><br/>- Log -----------------------------------------------------------------<br/>commit 59dc1addcceb34465dde8cda10dd17519cc9e5fb<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Tue Jun 21 09:07:48 2016 +0200<br/><br/> change manisort to produce a more intuitive order<br/> <br/> Dictionary sort order is very counter intuitive to read.<br/> <br/> Replace with a case-insensitive sort, which behaves as though<br/> path elements were independently compared, but with a tweak<br/> so that lib/Foo/Bar/Baz.pm sorts before lib/Foo/Bar/Baz-Bop.pm<br/><br/>M MANIFEST<br/>M Porting/manisort<br/>M Porting/pod_rules.pl<br/><br/>commit 28ecb9747cbb8efad36d9f022e2ef47ba54c6e14<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:51:38 2016 +0200<br/><br/> Change scalar(%hash) to be the same as 0+keys(%hash)<br/> <br/> This subject has a long history see [perl #114576] for more discussion.<br/> https://rt.perl.org/Public/Bug/Display.html?id=114576<br/> <br/> There are a variety of reasons we want to change the return signature of<br/> scalar(%hash). One is that it leaks implementation details about our<br/> associative array structure. Another is that it requires us to keep track<br/> of the used buckets in the hash, which we use for no other purpose but<br/> for scalar(%hash). Another is that it is just odd. Almost nothing needs to<br/> know these values. Perhaps debugging, but we have several much better<br/> functions for introspecting the internals of a hash.<br/> <br/> By changing the return signature we can remove all the logic related<br/> to maintaining and updating xhv_fill_lazy. This should make hot code<br/> paths a little faster, and maybe save some memory for traversed hashes.<br/> <br/> In order to provide some form of backwards compatibility we adds three<br/> new functions to the Hash::Util namespace: bucket_ratio(), num_buckets()<br/> and used_buckets(). These functions are actually implemented in<br/> universal.c, and thus always available even if Hash::Util is not loaded.<br/> This simplifies testing. At the same time Hash::Util contains backwards<br/> compatible code so that the new functions are available from it should<br/> they be needed in older perls.<br/> <br/> There are many tests in t/op/hash.t that are more or less obsolete after<br/> this patch as they test that xhv_fill_lazy is correctly set in various<br/> situations. However since we have a backwards compat layer we can just<br/> switch them to use bucket_ratio(%hash) instead of scalar(%hash) and keep<br/> the tests, just in case they are actually testing something not tested<br/> elsewhere.<br/><br/>M MANIFEST<br/>M dump.c<br/>M embed.fnc<br/>M embed.h<br/>M ext/Devel-Peek/t/Peek.t<br/>M ext/Hash-Util-FieldHash/t/05_perlhook.t<br/>M ext/Hash-Util/Changes<br/>M ext/Hash-Util/Util.xs<br/>M ext/Hash-Util/lib/Hash/Util.pm<br/>A ext/Hash-Util/t/builtin.t<br/>M hv.c<br/>M hv.h<br/>M pod/perldelta.pod<br/>M proto.h<br/>M sv.c<br/>M t/op/coreamp.t<br/>M t/op/each.t<br/>M t/op/hash.t<br/>M t/op/sub_lval.t<br/>M universal.c<br/><br/>commit 01de8e159659e3e0831afe73509bc93e247329e3<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:43:40 2016 +0200<br/><br/> Add a perldelta entry for recursive subpattern screwup in 5.24<br/><br/>M pod/perldelta.pod<br/><br/>commit ba2d165104d9d33eece67f745915b2af73ba216a<br/>Author: Yves Orton &lt;demerphq@gmail.com&gt;<br/>Date: Mon Jun 20 22:43:11 2016 +0200<br/><br/> Add perldelta for POSIX memory leak fix<br/><br/>M pod/perldelta.pod<br/>-----------------------------------------------------------------------<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47482.html Tue, 21 Jun 2016 18:39:55 +0000 [perl.git] branch blead, updated. v5.25.2-18-g21a5c8d by Matthew Horsfall In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/21a5c8db3a272de4e9aec0faf8402cb19ce8dbc9?hp=e7acdfe976f01ee0d1ba31b3b1db61454a72d6c9&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 21a5c8db3a272de4e9aec0faf8402cb19ce8dbc9<br/>Author: Matthew Horsfall &lt;wolfsage@gmail.com&gt;<br/>Date: Tue Jun 21 13:31:37 2016 -0400<br/><br/> Sort @def before generating $warnings::DEFAULT.<br/> <br/> This makes the comment easier to read.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> lib/warnings.pm | 4 ++--<br/> regen/warnings.pl | 4 ++--<br/> 2 files changed, 4 insertions(+), 4 deletions(-)<br/><br/>diff --git a/lib/warnings.pm b/lib/warnings.pm<br/>index ddb0c35..d607f31 100644<br/>--- a/lib/warnings.pm<br/>+++ b/lib/warnings.pm<br/>@@ -5,7 +5,7 @@<br/> <br/> package warnings;<br/> <br/>-our $VERSION = &quot;1.36&quot;;<br/>+our $VERSION = &quot;1.37&quot;;<br/> <br/> # Verify that we&#39;re called correctly so that warnings will work.<br/> # Can&#39;t use Carp, since Carp uses us!<br/>@@ -235,7 +235,7 @@ our %DeadBits = (<br/> <br/> # These are used by various things, including our own tests<br/> our $NONE = &quot;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0&quot;;<br/>-our $DEFAULT = &quot;\x10\x01\x00\x00\x00\x50\x04\x00\x00\x00\x00\x00\x00\x55\x51\x55\x00&quot;, # [2,58,59,52,55,60,61,53,56,54,62,4,63,22,23,25]<br/>+our $DEFAULT = &quot;\x10\x01\x00\x00\x00\x50\x04\x00\x00\x00\x00\x00\x00\x55\x51\x55\x00&quot;, # [2,4,22,23,25,52..56,58..63]<br/> our $LAST_BIT = 132 ;<br/> our $BYTES = 17 ;<br/> <br/>diff --git a/regen/warnings.pl b/regen/warnings.pl<br/>index 22c9c15..815c735 100644<br/>--- a/regen/warnings.pl<br/>+++ b/regen/warnings.pl<br/>@@ -16,7 +16,7 @@<br/> #<br/> # This script is normally invoked from regen.pl.<br/> <br/>-$VERSION = &#39;1.36&#39;;<br/>+$VERSION = &#39;1.37&#39;;<br/> <br/> BEGIN {<br/> require &#39;regen/regen_lib.pl&#39;;<br/>@@ -470,7 +470,7 @@ print $pm &quot;);\n\n&quot; ;<br/> print $pm &quot;# These are used by various things, including our own tests\n&quot;;<br/> print $pm tab(6, &#39;our $NONE&#39;), &#39;= &quot;&#39;, (&#39;\0&#39; x $warn_size) , &quot;\&quot;;\n&quot; ;<br/> print $pm tab(6, &#39;our $DEFAULT&#39;), &#39;= &quot;&#39;, mkHex($warn_size, map $_ * 2, @def),<br/>- &#39;&quot;, # [&#39;, mkRange(@def), &quot;]\n&quot; ;<br/>+ &#39;&quot;, # [&#39;, mkRange(sort { $a &lt;=&gt; $b } @def), &quot;]\n&quot; ;<br/> print $pm tab(6, &#39;our $LAST_BIT&#39;), &#39;= &#39; . &quot;$index ;\n&quot; ;<br/> print $pm tab(6, &#39;our $BYTES&#39;), &#39;= &#39; . &quot;$warn_size ;\n&quot; ;<br/> while (&lt;DATA&gt;) {<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47481.html Tue, 21 Jun 2016 17:45:19 +0000 [perl.git] branch blead, updated. v5.25.2-17-ge7acdfe by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/e7acdfe976f01ee0d1ba31b3b1db61454a72d6c9?hp=c0c2b3021b3b2a6bb405e98b1ebfcde6dc620048&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit e7acdfe976f01ee0d1ba31b3b1db61454a72d6c9<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Tue Jun 21 17:06:52 2016 +0100<br/><br/> only treat stash entries with .*:: as sub-stashes<br/> <br/> RT #128238<br/> <br/> %: = 0 would cause an assertion failure in Perl_gv_check(), since when<br/> it searched a stash for substashes, it assumed anything ending in &#39;:&#39; was<br/> a substash, whereas substashes end in &#39;::&#39;. So check for a double colon<br/> before recursing.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> gv.c | 5 ++++-<br/> t/op/stash.t | 9 ++++++++-<br/> 2 files changed, 12 insertions(+), 2 deletions(-)<br/><br/>diff --git a/gv.c b/gv.c<br/>index 4df3bce..2b3bdfa 100644<br/>--- a/gv.c<br/>+++ b/gv.c<br/>@@ -2423,7 +2423,10 @@ Perl_gv_check(pTHX_ HV *stash)<br/> for (entry = HvARRAY(stash)[i]; entry; entry = HeNEXT(entry)) {<br/> GV *gv;<br/> HV *hv;<br/>- if (HeKEY(entry)[HeKLEN(entry)-1] == &#39;:&#39; &amp;&amp;<br/>+ STRLEN keylen = HeKLEN(entry);<br/>+ const char * const key = HeKEY(entry);<br/>+<br/>+ if (keylen &gt;= 2 &amp;&amp; key[keylen-2] == &#39;:&#39; &amp;&amp; key[keylen-1] == &#39;:&#39; &amp;&amp;<br/> (gv = MUTABLE_GV(HeVAL(entry))) &amp;&amp; isGV(gv) &amp;&amp; (hv = GvHV(gv)))<br/> {<br/> if (hv != PL_defstash &amp;&amp; hv != stash<br/>diff --git a/t/op/stash.t b/t/op/stash.t<br/>index b8e0f34..ec795a9 100644<br/>--- a/t/op/stash.t<br/>+++ b/t/op/stash.t<br/>@@ -7,7 +7,7 @@ BEGIN {<br/> <br/> BEGIN { require &quot;./test.pl&quot;; }<br/> <br/>-plan( tests =&gt; 52 );<br/>+plan( tests =&gt; 53 );<br/> <br/> # Used to segfault (bug #15479)<br/> fresh_perl_like(<br/>@@ -341,3 +341,10 @@ is runperl(<br/> ),<br/> &quot;ok\n&quot;,<br/> &#39;[perl #128086] no crash from assigning hash to *:::::: &amp; deleting it&#39;;<br/>+<br/>+is runperl(<br/>+ prog =&gt; &#39;BEGIN { %: = 0; $^W=1}; print qq|ok\n|&#39;,<br/>+ stderr =&gt; 1,<br/>+ ),<br/>+ &quot;ok\n&quot;,<br/>+ &quot;[perl #128238] don&#39;t treat %: as a stash (needs 2 colons)&quot;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47480.html Tue, 21 Jun 2016 16:12:36 +0000 [perl.git] branch blead, updated. v5.25.2-16-gc0c2b30 by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/c0c2b3021b3b2a6bb405e98b1ebfcde6dc620048?hp=55b6481ff87f84626ba01275708297a42a6537b1&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit c0c2b3021b3b2a6bb405e98b1ebfcde6dc620048<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Tue Jun 21 15:48:57 2016 +0100<br/><br/> Revert &quot;Update Time-HiRes to CPAN version 1.9735&quot;<br/> <br/> This reverts commit e6da2a9c4c0cecea6bf21f8ae47d78bdbe8bcbce.<br/> <br/> This was hanging parallel testing on my Linux box.<br/> Cause not yest investigated, but revert for now.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> MANIFEST | 1 -<br/> Porting/Maintainers.pl | 2 +-<br/> dist/Time-HiRes/Changes | 13 -----<br/> dist/Time-HiRes/HiRes.pm | 29 ++----------<br/> dist/Time-HiRes/HiRes.xs | 83 --------------------------------<br/> dist/Time-HiRes/Makefile.PL | 92 +++---------------------------------<br/> dist/Time-HiRes/fallback/const-c.inc | 79 ++++++++++++-------------------<br/> dist/Time-HiRes/t/utime.t | 84 --------------------------------<br/> 8 files changed, 40 insertions(+), 343 deletions(-)<br/> delete mode 100644 dist/Time-HiRes/t/utime.t<br/><br/>diff --git a/MANIFEST b/MANIFEST<br/>index ab6cf77..25252df 100644<br/>--- a/MANIFEST<br/>+++ b/MANIFEST<br/>@@ -3684,7 +3684,6 @@ dist/Time-HiRes/t/time.t Test for Time::HiRes<br/> dist/Time-HiRes/t/tv_interval.t Test for Time::HiRes<br/> dist/Time-HiRes/t/ualarm.t Test for Time::HiRes<br/> dist/Time-HiRes/t/usleep.t Test for Time::HiRes<br/>-dist/Time-HiRes/t/utime.t<br/> dist/Time-HiRes/t/Watchdog.pm Test for Time::HiRes<br/> dist/Time-HiRes/typemap Time::HiRes extension<br/> dist/XSLoader/Makefile.PL Dynamic Loader makefile writer<br/>diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl<br/>index e50536d..0a97c3a 100755<br/>--- a/Porting/Maintainers.pl<br/>+++ b/Porting/Maintainers.pl<br/>@@ -1174,7 +1174,7 @@ use File::Glob qw(:case);<br/> },<br/> <br/> &#39;Time::HiRes&#39; =&gt; {<br/>- &#39;DISTRIBUTION&#39; =&gt; &#39;JHI/Time-HiRes-1.9735.tar.gz&#39;,<br/>+ &#39;DISTRIBUTION&#39; =&gt; &#39;JHI/Time-HiRes-1.9733.tar.gz&#39;,<br/> &#39;FILES&#39; =&gt; q[dist/Time-HiRes],<br/> },<br/> <br/>diff --git a/dist/Time-HiRes/Changes b/dist/Time-HiRes/Changes<br/>index 110787c..9d097c5 100644<br/>--- a/dist/Time-HiRes/Changes<br/>+++ b/dist/Time-HiRes/Changes<br/>@@ -1,18 +1,5 @@<br/> Revision history for the Perl extension Time::HiRes.<br/> <br/>-1.9735 [2016-07-21]<br/>- - Time::HiRes should override `utime` to allow setting hires<br/>- (use futimens and utimensat to implement subsecond utime)<br/>- [rt.perl.org #114809]<br/>- - the utime patch uses IS_SAFE_PATHNAME() which isn&#39;t available in<br/>- too old Perls, so emulate (in case the Devel::PPPort is too old)<br/>- - make it so that only one value is set for -DTIME_HIRES_STAT<br/>- even on systems that support many options<br/>-<br/>-1.9734 [2016-07-17]<br/>- - fix Darwins with clock_gettime: blead 2d41a263<br/>- [rt.perl.org #128427]<br/>-<br/> 1.9733 [2016-04-23]<br/> - C90 declaration-after-statement error with darwin threads: blead de1003b4<br/> [rt.cpan.org #113856]<br/>diff --git a/dist/Time-HiRes/HiRes.pm b/dist/Time-HiRes/HiRes.pm<br/>index bd92f78..e22a663 100644<br/>--- a/dist/Time-HiRes/HiRes.pm<br/>+++ b/dist/Time-HiRes/HiRes.pm<br/>@@ -23,12 +23,12 @@ our @EXPORT_OK = qw (usleep sleep ualarm alarm gettimeofday time tv_interval<br/> ITIMER_REAL ITIMER_VIRTUAL ITIMER_PROF ITIMER_REALPROF<br/> TIMER_ABSTIME<br/> d_usleep d_ualarm d_gettimeofday d_getitimer d_setitimer<br/>- d_nanosleep d_clock_gettime d_clock_getres d_hires_utime<br/>+ d_nanosleep d_clock_gettime d_clock_getres<br/> d_clock d_clock_nanosleep<br/>- stat lstat utime<br/>+ stat lstat<br/> );<br/> <br/>-our $VERSION = &#39;1.9735&#39;;<br/>+our $VERSION = &#39;1.9734&#39;;<br/> our $XS_VERSION = $VERSION;<br/> $VERSION = eval $VERSION;<br/> <br/>@@ -60,7 +60,6 @@ sub import {<br/> ($i eq &#39;clock&#39; &amp;&amp; !&amp;d_clock) ||<br/> ($i eq &#39;nanosleep&#39; &amp;&amp; !&amp;d_nanosleep) ||<br/> ($i eq &#39;usleep&#39; &amp;&amp; !&amp;d_usleep) ||<br/>- ($i eq &#39;utime&#39; &amp;&amp; !&amp;d_hires_utime) ||<br/> ($i eq &#39;ualarm&#39; &amp;&amp; !&amp;d_ualarm)) {<br/> require Carp;<br/> Carp::croak(&quot;Time::HiRes::$i(): unimplemented in this platform&quot;);<br/>@@ -93,7 +92,7 @@ Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers<br/> <br/> use Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep<br/> clock_gettime clock_getres clock_nanosleep clock<br/>- stat lstat utime);<br/>+ stat lstat );<br/> <br/> usleep ($microseconds);<br/> nanosleep ($nanoseconds);<br/>@@ -138,9 +137,6 @@ Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers<br/> my @stat = stat(FH);<br/> my @stat = lstat(&quot;file&quot;);<br/> <br/>- use Time::HiRes qw( utime );<br/>- utime $floating_seconds_atime, $floating_seconds_mtime, $file...;<br/>-<br/> =head1 DESCRIPTION<br/> <br/> The C&lt;Time::HiRes&gt; module implements a Perl interface to the<br/>@@ -450,23 +446,6 @@ if the operations are<br/> the access time stamp from t2 need not be greater-than the modify<br/> time stamp from t1: it may be equal or I&lt;less&gt;.<br/> <br/>-=item utime LIST<br/>-<br/>-As L&lt;perlfunc/utime&gt; but with the ability to set the access/modify<br/>-file timestamps in subsecond resolution, if the operating system and<br/>-the filesystem both support such timestamps. To override the standard<br/>-utime():<br/>-<br/>- use Time::HiRes qw(utime);<br/>-<br/>-Test for the value of &amp;Time::HiRes::d_hires_utime to find out whether<br/>-the operating system supports setting subsecond file timestamps.<br/>-<br/>-As with CORE::utime(), passing undef as both the atime and mtime will<br/>-call the syscall with a NULL argument.<br/>-<br/>-Returns the number of files successfully changed.<br/>-<br/> =back<br/> <br/> =head1 EXAMPLES<br/>diff --git a/dist/Time-HiRes/HiRes.xs b/dist/Time-HiRes/HiRes.xs<br/>index ad0b834..ed60336 100644<br/>--- a/dist/Time-HiRes/HiRes.xs<br/>+++ b/dist/Time-HiRes/HiRes.xs<br/>@@ -921,12 +921,6 @@ nsec_without_unslept(struct timespec *sleepfor,<br/> <br/> #endif<br/> <br/>-/* In case Perl and/or Devel::PPPort are too old, minimally emulate<br/>- * IS_SAFE_PATHNAME() (which looks for zero bytes in the pathname). */<br/>- #ifndef IS_SAFE_PATHNAME<br/>-#define IS_SAFE_PATHNAME(pv, len, opname) (((len)&gt;1)&amp;&amp;memchr((pv), 0, (len)-1)?(SETERRNO(ENOENT, LIB_INVARG),Perl_ck_warner(aTHX_ packWARN(WARN_MISC), &quot;Invalid \\0 character in pathname for %s&quot;,opnam ... [17 chars truncated]<br/>-#endif<br/>-<br/> MODULE = Time::HiRes PACKAGE = Time::HiRes<br/> <br/> PROTOTYPES: ENABLE<br/>@@ -1323,83 +1317,6 @@ getitimer(which)<br/> <br/> #endif /* #if defined(HAS_GETITIMER) &amp;&amp; defined(HAS_SETITIMER) */<br/> <br/>-#if defined(TIME_HIRES_UTIME)<br/>-<br/>-I32<br/>-utime(accessed, modified, ...)<br/>-PROTOTYPE: $$@<br/>- PREINIT:<br/>- SV* accessed;<br/>- SV* modified;<br/>- SV* file;<br/>-<br/>- struct timespec utbuf[2];<br/>- struct timespec *utbufp = utbuf;<br/>- int tot;<br/>-<br/>- CODE:<br/>- dXSARGS;<br/>- accessed = ST(0);<br/>- modified = ST(1);<br/>- items -= 2;<br/>- tot = 0;<br/>-<br/>- if ( accessed == &amp;PL_sv_undef &amp;&amp; modified == &amp;PL_sv_undef )<br/>- utbufp = NULL;<br/>- else {<br/>- if (SvNV(accessed) &lt; 0.0 || SvNV(modified) &lt; 0.0)<br/>- croak(&quot;Time::HiRes::utime(%&quot;NVgf&quot;, %&quot;NVgf&quot;): negative time not invented yet&quot;, SvNV(accessed), SvNV(modified));<br/>- Zero(&amp;utbuf, sizeof utbuf, char);<br/>- utbuf[0].tv_sec = (Time_t)SvNV(accessed); /* time accessed */<br/>- utbuf[0].tv_nsec = (long)( ( SvNV(accessed) - utbuf[0].tv_sec ) * 1e9 );<br/>- utbuf[1].tv_sec = (Time_t)SvNV(modified); /* time modified */<br/>- utbuf[1].tv_nsec = (long)( ( SvNV(modified) - utbuf[1].tv_sec ) * 1e9 );<br/>- }<br/>-<br/>- while (items &gt; 0) {<br/>- file = POPs; items--;<br/>-<br/>- if (SvROK(file) &amp;&amp; GvIO(SvRV(file)) &amp;&amp; IoIFP(sv_2io(SvRV(file)))) {<br/>- int fd = PerlIO_fileno(IoIFP(sv_2io(file)));<br/>- if (fd &lt; 0)<br/>- SETERRNO(EBADF,RMS_IFI);<br/>- else <br/>-#ifdef HAS_FUTIMENS<br/>- if (futimens(fd, utbufp) == 0)<br/>- tot++;<br/>-#else /* HAS_FUTIMES */<br/>- croak(&quot;futimens unimplemented in this platform&quot;);<br/>-#endif /* HAS_FUTIMES */<br/>- }<br/>- else {<br/>-#ifdef HAS_UTIMENSAT<br/>- STRLEN len;<br/>- char * name = SvPV(file, len);<br/>- if (IS_SAFE_PATHNAME(name, len, &quot;utime&quot;) &amp;&amp;<br/>- utimensat(AT_FDCWD, name, utbufp, 0) == 0)<br/>- tot++;<br/>-#else /* HAS_UTIMENSAT */<br/>- croak(&quot;utimensat unimplemented in this platform&quot;);<br/>-#endif /* HAS_UTIMENSAT */<br/>- }<br/>- } /* while items */<br/>- RETVAL = tot;<br/>-<br/>- OUTPUT:<br/>- RETVAL<br/>-<br/>-#else /* #if defined(TIME_HIRES_UTIME) */<br/>-<br/>-I32<br/>-utime(accessed, modified, ...)<br/>- CODE:<br/>- croak(&quot;Time::HiRes::utime(): unimplemented in this platform&quot;);<br/>- RETVAL = 0;<br/>- OUTPUT:<br/>- RETVAL<br/>-<br/>-#endif /* #if defined(TIME_HIRES_UTIME) */<br/>-<br/> #if defined(TIME_HIRES_CLOCK_GETTIME)<br/> <br/> NV<br/>diff --git a/dist/Time-HiRes/Makefile.PL b/dist/Time-HiRes/Makefile.PL<br/>index 8622273..087ab79 100644<br/>--- a/dist/Time-HiRes/Makefile.PL<br/>+++ b/dist/Time-HiRes/Makefile.PL<br/>@@ -354,41 +354,6 @@ int main(int argc, char** argv)<br/> EOM<br/> }<br/> <br/>-sub has_futimens {<br/>- return 1 if<br/>- try_compile_and_link(&lt;&lt;EOM);<br/>-#include &quot;EXTERN.h&quot;<br/>-#include &quot;perl.h&quot;<br/>-#include &quot;XSUB.h&quot;<br/>-#include &lt;sys/time.h&gt;<br/>-int main(int argc, char** argv)<br/>-{<br/>- int ret;<br/>- struct timespec ts[2];<br/>- ret = futimens(0, ts);<br/>- ret == 0 ? exit(0) : exit(errno ? errno : -1);<br/>-}<br/>-EOM<br/>-}<br/>-<br/>-sub has_utimensat{<br/>- return 1 if<br/>- try_compile_and_link(&lt;&lt;EOM);<br/>-#include &quot;EXTERN.h&quot;<br/>-#include &quot;perl.h&quot;<br/>-#include &quot;XSUB.h&quot;<br/>-#include &lt;sys/time.h&gt;<br/>-#include &lt;fcntl.h&gt;<br/>-int main(int argc, char** argv)<br/>-{<br/>- int ret;<br/>- struct timespec ts[2];<br/>- ret = utimensat(AT_FDCWD, 0, ts, 0);<br/>- ret == 0 ? exit(0) : exit(errno ? errno : -1);<br/>-}<br/>-EOM<br/>-}<br/>-<br/> sub DEFINE {<br/> my ($def, $val) = @_;<br/> my $define = defined $val ? &quot;$def=$val&quot; : $def ;<br/>@@ -666,36 +631,6 @@ EOD<br/> print &quot;NOT found.\n&quot;;<br/> }<br/> <br/>- print &quot;Looking for futimens()... &quot;;<br/>- my $has_futimens;<br/>- if (has_futimens()) {<br/>- $has_futimens++;<br/>- $DEFINE .= &#39; -DHAS_FUTIMENS&#39;;<br/>- }<br/>-<br/>- if ($has_futimens) {<br/>- print &quot;found.\n&quot;;<br/>- } else {<br/>- print &quot;NOT found.\n&quot;;<br/>- }<br/>-<br/>- print &quot;Looking for utimensat()... &quot;;<br/>- my $has_utimensat;<br/>- if (has_utimensat()) {<br/>- $has_utimensat++;<br/>- $DEFINE .= &#39; -DHAS_UTIMENSAT&#39;;<br/>- }<br/>-<br/>- if ($has_utimensat) {<br/>- print &quot;found.\n&quot;;<br/>- } else {<br/>- print &quot;NOT found.\n&quot;;<br/>- }<br/>-<br/>- if ($has_futimens or $has_utimensat) {<br/>- $DEFINE .= &#39; -DTIME_HIRES_UTIME&#39;;<br/>- }<br/>-<br/> print &quot;Looking for stat() subsecond timestamps...\n&quot;;<br/> <br/> print &quot;Trying struct stat st_atimespec.tv_nsec...&quot;;<br/>@@ -709,7 +644,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtimespec++;<br/>- DEFINE(&#39;TIME_HIRES_STAT_ST_XTIMESPEC&#39;); # 1<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 1);<br/> }<br/> <br/> if ($has_stat_st_xtimespec) {<br/>@@ -729,7 +664,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtimensec++;<br/>- DEFINE(&#39;TIME_HIRES_STAT_ST_XTIMENSEC&#39;); # 2<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 2);<br/> }<br/> <br/> if ($has_stat_st_xtimensec) {<br/>@@ -749,7 +684,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtime_n++;<br/>- DEFINE(&#39;TIME_HIRES_STAT_ST_XTIME_N&#39;); # 3<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 3);<br/> }<br/> <br/> if ($has_stat_st_xtime_n) {<br/>@@ -769,7 +704,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtim++;<br/>- DEFINE(&#39;TIME_HIRES_STAT_XTIM&#39;); # 4<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 4);<br/> }<br/> <br/> if ($has_stat_st_xtim) {<br/>@@ -789,7 +724,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_uxtime++;<br/>- DEFINE(&#39;TIME_HIRES_STAT_ST_UXTIME&#39;); # 5<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 5);<br/> }<br/> <br/> if ($has_stat_st_uxtime) {<br/>@@ -798,19 +733,6 @@ EOM<br/> print &quot;NOT found.\n&quot;;<br/> }<br/> <br/>- # See HiRes.xs hrstatns()<br/>- if ($has_stat_st_xtimespec) {<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 1);<br/>- } elsif ($has_stat_st_xtimensec) {<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 2);<br/>- } elsif ($has_stat_st_xtime_n) {<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 3);<br/>- } elsif ($has_stat_st_xtim) {<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 4);<br/>- } elsif ($has_stat_st_uxtime) {<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 5);<br/>- } <br/>-<br/> if ($DEFINE =~ /-DTIME_HIRES_STAT=\d+/) {<br/> print &quot;You seem to have stat() subsecond timestamps.\n&quot;;<br/> print &quot;(Your struct stat has them, but the filesystems must help.)\n&quot;;<br/>@@ -947,7 +869,7 @@ sub doConstants {<br/> );<br/> foreach (qw (d_usleep d_ualarm d_gettimeofday d_getitimer d_setitimer<br/> d_nanosleep d_clock_gettime d_clock_getres<br/>- d_clock d_clock_nanosleep d_hires_stat d_hires_utime)) {<br/>+ d_clock d_clock_nanosleep d_hires_stat)) {<br/> my $macro = $_;<br/> if ($macro =~ /^(d_nanosleep|d_clock)$/) {<br/> $macro =~ s/^d_(.+)/TIME_HIRES_\U$1/;<br/>@@ -963,8 +885,6 @@ sub doConstants {<br/> push @names, {name =&gt; $_, macro =&gt; $macro, value =&gt; $val,<br/> default =&gt; [&quot;IV&quot;, &quot;0&quot;]};<br/> next;<br/>- } elsif ($macro =~ /^(d_hires_.*)$/) {<br/>- $macro =~ s/^d_(.+)/TIME_\U$1/;<br/> } else {<br/> $macro =~ s/^d_(.+)/HAS_\U$1/;<br/> }<br/>diff --git a/dist/Time-HiRes/fallback/const-c.inc b/dist/Time-HiRes/fallback/const-c.inc<br/>index 524db16..a862617 100644<br/>--- a/dist/Time-HiRes/fallback/const-c.inc<br/>+++ b/dist/Time-HiRes/fallback/const-c.inc<br/>@@ -19,7 +19,6 @@ typedef double NV; /* 5.6 and later define NVTYPE, and typedef NV to it. */<br/> #ifndef pTHX_<br/> #define pTHX_ /* 5.6 or later define this for threading support. */<br/> #endif<br/>-<br/> static int<br/> constant_11 (pTHX_ const char *name, IV *iv_return) {<br/> /* When generated this function returned values for the list of names given<br/>@@ -88,51 +87,6 @@ constant_11 (pTHX_ const char *name, IV *iv_return) {<br/> }<br/> <br/> static int<br/>-constant_13 (pTHX_ const char *name, IV *iv_return) {<br/>- /* When generated this function returned values for the list of names given<br/>- here. However, subsequent manual editing may have added or removed some.<br/>- CLOCK_HIGHRES TIMER_ABSTIME d_hires_utime */<br/>- /* Offset 1 gives the best switch position. */<br/>- switch (name[1]) {<br/>- case &#39;I&#39;:<br/>- if (memEQ(name, &quot;TIMER_ABSTIME&quot;, 13)) {<br/>- /* ^ */<br/>-#ifdef TIMER_ABSTIME<br/>- *iv_return = TIMER_ABSTIME;<br/>- return PERL_constant_ISIV;<br/>-#else<br/>- return PERL_constant_NOTDEF;<br/>-#endif<br/>- }<br/>- break;<br/>- case &#39;L&#39;:<br/>- if (memEQ(name, &quot;CLOCK_HIGHRES&quot;, 13)) {<br/>- /* ^ */<br/>-#ifdef CLOCK_HIGHRES<br/>- *iv_return = CLOCK_HIGHRES;<br/>- return PERL_constant_ISIV;<br/>-#else<br/>- return PERL_constant_NOTDEF;<br/>-#endif<br/>- }<br/>- break;<br/>- case &#39;_&#39;:<br/>- if (memEQ(name, &quot;d_hires_utime&quot;, 13)) {<br/>- /* ^ */<br/>-#ifdef TIME_HIRES_UTIME<br/>- *iv_return = 1;<br/>- return PERL_constant_ISIV;<br/>-#else<br/>- *iv_return = 0;<br/>- return PERL_constant_ISIV;<br/>-#endif<br/>- }<br/>- break;<br/>- }<br/>- return PERL_constant_NOTFOUND;<br/>-}<br/>-<br/>-static int<br/> constant_14 (pTHX_ const char *name, IV *iv_return) {<br/> /* When generated this function returned values for the list of names given<br/> here. However, subsequent manual editing may have added or removed some.<br/>@@ -296,17 +250,16 @@ my @names = (qw(CLOCKS_PER_SEC CLOCK_HIGHRES CLOCK_MONOTONIC<br/> {name=&gt;&quot;d_getitimer&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_GETITIMER&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_gettimeofday&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_GETTIMEOFDAY&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_hires_stat&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;TIME_HIRES_STAT&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/>- {name=&gt;&quot;d_hires_utime&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;TIME_HIRES_UTIME&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_nanosleep&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;TIME_HIRES_NANOSLEEP&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_setitimer&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_SETITIMER&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_ualarm&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_UALARM&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_usleep&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_USLEEP&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]});<br/> <br/>-print constant_types(), &quot;\n&quot;; # macro defs<br/>+print constant_types(); # macro defs<br/> foreach (C_constant (&quot;Time::HiRes&quot;, &#39;constant&#39;, &#39;IV&#39;, $types, undef, 3, @names) ) {<br/> print $_, &quot;\n&quot;; # C constant subs<br/> }<br/>-print &quot;\n#### XS Section:\n&quot;;<br/>+print &quot;#### XS Section:\n&quot;;<br/> print XS_constant (&quot;Time::HiRes&quot;, $types);<br/> __END__<br/> */<br/>@@ -369,7 +322,33 @@ __END__<br/> }<br/> break;<br/> case 13:<br/>- return constant_13 (aTHX_ name, iv_return);<br/>+ /* Names all of length 13. */<br/>+ /* CLOCK_HIGHRES TIMER_ABSTIME */<br/>+ /* Offset 2 gives the best switch position. */<br/>+ switch (name[2]) {<br/>+ case &#39;M&#39;:<br/>+ if (memEQ(name, &quot;TIMER_ABSTIME&quot;, 13)) {<br/>+ /* ^ */<br/>+#ifdef TIMER_ABSTIME<br/>+ *iv_return = TIMER_ABSTIME;<br/>+ return PERL_constant_ISIV;<br/>+#else<br/>+ return PERL_constant_NOTDEF;<br/>+#endif<br/>+ }<br/>+ break;<br/>+ case &#39;O&#39;:<br/>+ if (memEQ(name, &quot;CLOCK_HIGHRES&quot;, 13)) {<br/>+ /* ^ */<br/>+#ifdef CLOCK_HIGHRES<br/>+ *iv_return = CLOCK_HIGHRES;<br/>+ return PERL_constant_ISIV;<br/>+#else<br/>+ return PERL_constant_NOTDEF;<br/>+#endif<br/>+ }<br/>+ break;<br/>+ }<br/> break;<br/> case 14:<br/> return constant_14 (aTHX_ name, iv_return);<br/>diff --git a/dist/Time-HiRes/t/utime.t b/dist/Time-HiRes/t/utime.t<br/>deleted file mode 100644<br/>index 5de86c2..0000000<br/>--- a/dist/Time-HiRes/t/utime.t<br/>+++ /dev/null<br/>@@ -1,84 +0,0 @@<br/>-use strict;<br/>-<br/>-BEGIN {<br/>- require Time::HiRes;<br/>- unless(&amp;Time::HiRes::d_hires_utime) {<br/>- require Test::More;<br/>- Test::More::plan(skip_all =&gt; &quot;no hires_utime()&quot;);<br/>- }<br/>-}<br/>-<br/>-use Test::More;<br/>-use t::Watchdog;<br/>-use File::Temp qw( tempfile );<br/>-<br/>-use Config;<br/>-<br/>-my $atime = 1.111111111;<br/>-my $mtime = 2.222222222;<br/>-<br/>-subtest &quot;utime \$fh&quot; =&gt; sub {<br/>- my ($fh, $filename) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>- is Time::HiRes::utime($atime, $mtime, $fh), 1, &quot;One file changed&quot;;<br/>- my ($got_atime, $got_mtime) = ( Time::HiRes::stat($filename) )[8, 9];<br/>- is $got_atime, $atime, &quot;atime set correctly&quot;;<br/>- is $got_mtime, $mtime, &quot;mtime set correctly&quot;;<br/>-};<br/>-<br/>-subtest &quot;utime \$filename&quot; =&gt; sub {<br/>- my ($fh, $filename) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>- is Time::HiRes::utime($atime, $mtime, $filename), 1, &quot;One file changed&quot;;<br/>- my ($got_atime, $got_mtime) = ( Time::HiRes::stat($fh) )[8, 9];<br/>- is $got_atime, $atime, &quot;atime set correctly&quot;;<br/>- is $got_mtime, $mtime, &quot;mtime set correctly&quot;;<br/>-};<br/>-<br/>-subtest &quot;utime \$filename and \$fh&quot; =&gt; sub {<br/>- my ($fh1, $filename1) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>- my ($fh2, $filename2) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>- is Time::HiRes::utime($atime, $mtime, $filename1, $fh2), 2, &quot;Two files changed&quot;;<br/>- {<br/>- my ($got_atime, $got_mtime) = ( Time::HiRes::stat($fh1) )[8, 9];<br/>- is $got_atime, $atime, &quot;File 1 atime set correctly&quot;;<br/>- is $got_mtime, $mtime, &quot;File 1 mtime set correctly&quot;;<br/>- }<br/>- {<br/>- my ($got_atime, $got_mtime) = ( Time::HiRes::stat($filename2) )[8, 9];<br/>- is $got_atime, $atime, &quot;File 2 atime set correctly&quot;;<br/>- is $got_mtime, $mtime, &quot;File 2 mtime set correctly&quot;;<br/>- }<br/>-};<br/>-<br/>-subtest &quot;utime undef sets time to now&quot; =&gt; sub {<br/>- my ($fh1, $filename1) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>- my ($fh2, $filename2) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>-<br/>- my $now = Time::HiRes::time;<br/>- is Time::HiRes::utime(undef, undef, $filename1, $fh2), 2, &quot;Two files changed&quot;;<br/>-<br/>- {<br/>- my ($got_atime, $got_mtime) = ( Time::HiRes::stat($fh1) )[8, 9];<br/>- cmp_ok abs( $got_atime - $now), &#39;&lt;&#39;, 0.1, &quot;File 1 atime set correctly&quot;;<br/>- cmp_ok abs( $got_mtime - $now), &#39;&lt;&#39;, 0.1, &quot;File 1 mtime set correctly&quot;;<br/>- }<br/>- {<br/>- my ($got_atime, $got_mtime) = ( Time::HiRes::stat($filename2) )[8, 9];<br/>- cmp_ok abs( $got_atime - $now), &#39;&lt;&#39;, 0.1, &quot;File 2 atime set correctly&quot;;<br/>- cmp_ok abs( $got_mtime - $now), &#39;&lt;&#39;, 0.1, &quot;File 2 mtime set correctly&quot;;<br/>- }<br/>-};<br/>-<br/>-subtest &quot;negative atime dies&quot; =&gt; sub {<br/>- eval { Time::HiRes::utime(-4, $mtime) };<br/>- like $@, qr/::utime\(-4, 2\.22222\): negative time not invented yet/,<br/>- &quot;negative time error&quot;;<br/>-};<br/>-<br/>-subtest &quot;negative mtime dies&quot; =&gt; sub {<br/>- eval { Time::HiRes::utime($atime, -4) };<br/>- like $@, qr/::utime\(1.11111, -4\): negative time not invented yet/,<br/>- &quot;negative time error&quot;;<br/>-};<br/>-<br/>-done_testing;<br/>-1;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47479.html Tue, 21 Jun 2016 14:59:50 +0000 [perl.git] branch blead, updated. v5.25.2-15-g55b6481 by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/55b6481ff87f84626ba01275708297a42a6537b1?hp=e6da2a9c4c0cecea6bf21f8ae47d78bdbe8bcbce&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 55b6481ff87f84626ba01275708297a42a6537b1<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Tue Jun 21 15:23:20 2016 +0100<br/><br/> uninit warning from $h{\const} coredumped<br/> <br/> The code that printed the the name and subscript of a hash element<br/> in an &quot;uninitialized variable&quot; warning assumed that a constant<br/> hash subscript would be SvPOK. Something like \1 is a constant,<br/> but is ROK, not POK. SEGVs ensured.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> sv.c | 5 ++++-<br/> t/op/hashwarn.t | 19 ++++++++++++++++++-<br/> 2 files changed, 22 insertions(+), 2 deletions(-)<br/><br/>diff --git a/sv.c b/sv.c<br/>index 535ee8d..b0fdd15 100644<br/>--- a/sv.c<br/>+++ b/sv.c<br/>@@ -15683,9 +15683,12 @@ Perl_varname(pTHX_ const GV *const gv, const char gvtype, PADOFFSET targ,<br/> <br/> if (subscript_type == FUV_SUBSCRIPT_HASH) {<br/> SV * const sv = newSV(0);<br/>+ STRLEN len;<br/>+ const char * const pv = SvPV_nomg_const((SV*)keyname, len);<br/>+<br/> *SvPVX(name) = &#39;$&#39;;<br/> Perl_sv_catpvf(aTHX_ name, &quot;{%s}&quot;,<br/>- pv_pretty(sv, SvPVX_const(keyname), SvCUR(keyname), 32, NULL, NULL,<br/>+ pv_pretty(sv, pv, len, 32, NULL, NULL,<br/> PERL_PV_PRETTY_DUMP | PERL_PV_ESCAPE_UNI_DETECT ));<br/> SvREFCNT_dec_NN(sv);<br/> }<br/>diff --git a/t/op/hashwarn.t b/t/op/hashwarn.t<br/>index a6a1de9..6d72244 100644<br/>--- a/t/op/hashwarn.t<br/>+++ b/t/op/hashwarn.t<br/>@@ -6,7 +6,7 @@ BEGIN {<br/> }<br/> <br/> require &#39;./test.pl&#39;;<br/>-plan( tests =&gt; 16 );<br/>+plan( tests =&gt; 18 );<br/> <br/> use strict;<br/> use warnings;<br/>@@ -71,3 +71,20 @@ my $fail_not_hr = &#39;Not a HASH reference at &#39;;<br/> cmp_ok(scalar(@warnings),&#39;==&#39;,0,&#39;pseudo-hash 2 count&#39;);<br/> cmp_ok(substr($@,0,length($fail_not_hr)),&#39;eq&#39;,$fail_not_hr,&#39;pseudo-hash 2 msg&#39;);<br/> }<br/>+<br/>+# RT #128189<br/>+# this used to coredump<br/>+<br/>+{<br/>+ @warnings = ();<br/>+ my %h;<br/>+<br/>+ no warnings;<br/>+ use warnings qw(uninitialized);<br/>+<br/>+ my $x = &quot;$h{\1}&quot;;<br/>+ is(scalar @warnings, 1, &quot;RT #128189 - 1 warning&quot;);<br/>+ like(&quot;@warnings&quot;,<br/>+ qr/Use of uninitialized value \$h\{&quot;SCALAR\(0x[\da-f]+\)&quot;\}/,<br/>+ &quot;RT #128189 correct warning&quot;);<br/>+}<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47478.html Tue, 21 Jun 2016 14:28:44 +0000 [perl.git] branch blead, updated. v5.25.2-14-ge6da2a9 by Chris 'Bingos' Williams In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/e6da2a9c4c0cecea6bf21f8ae47d78bdbe8bcbce?hp=4827ac7e56d329e2bcf028d5472ae4b3407a71d8&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit e6da2a9c4c0cecea6bf21f8ae47d78bdbe8bcbce<br/>Author: Chris &#39;BinGOs&#39; Williams &lt;chris@bingosnet.co.uk&gt;<br/>Date: Tue Jun 21 14:59:03 2016 +0100<br/><br/> Update Time-HiRes to CPAN version 1.9735<br/> <br/> [DELTA]<br/> <br/> 1.9735 [2016-07-21]<br/> - Time::HiRes should override `utime` to allow setting hires<br/> (use futimens and utimensat to implement subsecond utime)<br/> [rt.perl.org #114809]<br/> - the utime patch uses IS_SAFE_PATHNAME() which isn&#39;t available in<br/> too old Perls, so emulate (in case the Devel::PPPort is too old)<br/> - make it so that only one value is set for -DTIME_HIRES_STAT<br/> even on systems that support many options<br/> <br/> 1.9734 [2016-07-17]<br/> - fix Darwins with clock_gettime: blead 2d41a263<br/> [rt.perl.org #128427]<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> MANIFEST | 1 +<br/> Porting/Maintainers.pl | 2 +-<br/> dist/Time-HiRes/Changes | 13 +++++<br/> dist/Time-HiRes/HiRes.pm | 29 ++++++++++--<br/> dist/Time-HiRes/HiRes.xs | 83 ++++++++++++++++++++++++++++++++<br/> dist/Time-HiRes/Makefile.PL | 92 +++++++++++++++++++++++++++++++++---<br/> dist/Time-HiRes/fallback/const-c.inc | 79 +++++++++++++++++++------------<br/> dist/Time-HiRes/t/utime.t | 84 ++++++++++++++++++++++++++++++++<br/> 8 files changed, 343 insertions(+), 40 deletions(-)<br/> create mode 100644 dist/Time-HiRes/t/utime.t<br/><br/>diff --git a/MANIFEST b/MANIFEST<br/>index 25252df..ab6cf77 100644<br/>--- a/MANIFEST<br/>+++ b/MANIFEST<br/>@@ -3684,6 +3684,7 @@ dist/Time-HiRes/t/time.t Test for Time::HiRes<br/> dist/Time-HiRes/t/tv_interval.t Test for Time::HiRes<br/> dist/Time-HiRes/t/ualarm.t Test for Time::HiRes<br/> dist/Time-HiRes/t/usleep.t Test for Time::HiRes<br/>+dist/Time-HiRes/t/utime.t<br/> dist/Time-HiRes/t/Watchdog.pm Test for Time::HiRes<br/> dist/Time-HiRes/typemap Time::HiRes extension<br/> dist/XSLoader/Makefile.PL Dynamic Loader makefile writer<br/>diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl<br/>index 0a97c3a..e50536d 100755<br/>--- a/Porting/Maintainers.pl<br/>+++ b/Porting/Maintainers.pl<br/>@@ -1174,7 +1174,7 @@ use File::Glob qw(:case);<br/> },<br/> <br/> &#39;Time::HiRes&#39; =&gt; {<br/>- &#39;DISTRIBUTION&#39; =&gt; &#39;JHI/Time-HiRes-1.9733.tar.gz&#39;,<br/>+ &#39;DISTRIBUTION&#39; =&gt; &#39;JHI/Time-HiRes-1.9735.tar.gz&#39;,<br/> &#39;FILES&#39; =&gt; q[dist/Time-HiRes],<br/> },<br/> <br/>diff --git a/dist/Time-HiRes/Changes b/dist/Time-HiRes/Changes<br/>index 9d097c5..110787c 100644<br/>--- a/dist/Time-HiRes/Changes<br/>+++ b/dist/Time-HiRes/Changes<br/>@@ -1,5 +1,18 @@<br/> Revision history for the Perl extension Time::HiRes.<br/> <br/>+1.9735 [2016-07-21]<br/>+ - Time::HiRes should override `utime` to allow setting hires<br/>+ (use futimens and utimensat to implement subsecond utime)<br/>+ [rt.perl.org #114809]<br/>+ - the utime patch uses IS_SAFE_PATHNAME() which isn&#39;t available in<br/>+ too old Perls, so emulate (in case the Devel::PPPort is too old)<br/>+ - make it so that only one value is set for -DTIME_HIRES_STAT<br/>+ even on systems that support many options<br/>+<br/>+1.9734 [2016-07-17]<br/>+ - fix Darwins with clock_gettime: blead 2d41a263<br/>+ [rt.perl.org #128427]<br/>+<br/> 1.9733 [2016-04-23]<br/> - C90 declaration-after-statement error with darwin threads: blead de1003b4<br/> [rt.cpan.org #113856]<br/>diff --git a/dist/Time-HiRes/HiRes.pm b/dist/Time-HiRes/HiRes.pm<br/>index e22a663..bd92f78 100644<br/>--- a/dist/Time-HiRes/HiRes.pm<br/>+++ b/dist/Time-HiRes/HiRes.pm<br/>@@ -23,12 +23,12 @@ our @EXPORT_OK = qw (usleep sleep ualarm alarm gettimeofday time tv_interval<br/> ITIMER_REAL ITIMER_VIRTUAL ITIMER_PROF ITIMER_REALPROF<br/> TIMER_ABSTIME<br/> d_usleep d_ualarm d_gettimeofday d_getitimer d_setitimer<br/>- d_nanosleep d_clock_gettime d_clock_getres<br/>+ d_nanosleep d_clock_gettime d_clock_getres d_hires_utime<br/> d_clock d_clock_nanosleep<br/>- stat lstat<br/>+ stat lstat utime<br/> );<br/> <br/>-our $VERSION = &#39;1.9734&#39;;<br/>+our $VERSION = &#39;1.9735&#39;;<br/> our $XS_VERSION = $VERSION;<br/> $VERSION = eval $VERSION;<br/> <br/>@@ -60,6 +60,7 @@ sub import {<br/> ($i eq &#39;clock&#39; &amp;&amp; !&amp;d_clock) ||<br/> ($i eq &#39;nanosleep&#39; &amp;&amp; !&amp;d_nanosleep) ||<br/> ($i eq &#39;usleep&#39; &amp;&amp; !&amp;d_usleep) ||<br/>+ ($i eq &#39;utime&#39; &amp;&amp; !&amp;d_hires_utime) ||<br/> ($i eq &#39;ualarm&#39; &amp;&amp; !&amp;d_ualarm)) {<br/> require Carp;<br/> Carp::croak(&quot;Time::HiRes::$i(): unimplemented in this platform&quot;);<br/>@@ -92,7 +93,7 @@ Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers<br/> <br/> use Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep<br/> clock_gettime clock_getres clock_nanosleep clock<br/>- stat lstat );<br/>+ stat lstat utime);<br/> <br/> usleep ($microseconds);<br/> nanosleep ($nanoseconds);<br/>@@ -137,6 +138,9 @@ Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers<br/> my @stat = stat(FH);<br/> my @stat = lstat(&quot;file&quot;);<br/> <br/>+ use Time::HiRes qw( utime );<br/>+ utime $floating_seconds_atime, $floating_seconds_mtime, $file...;<br/>+<br/> =head1 DESCRIPTION<br/> <br/> The C&lt;Time::HiRes&gt; module implements a Perl interface to the<br/>@@ -446,6 +450,23 @@ if the operations are<br/> the access time stamp from t2 need not be greater-than the modify<br/> time stamp from t1: it may be equal or I&lt;less&gt;.<br/> <br/>+=item utime LIST<br/>+<br/>+As L&lt;perlfunc/utime&gt; but with the ability to set the access/modify<br/>+file timestamps in subsecond resolution, if the operating system and<br/>+the filesystem both support such timestamps. To override the standard<br/>+utime():<br/>+<br/>+ use Time::HiRes qw(utime);<br/>+<br/>+Test for the value of &amp;Time::HiRes::d_hires_utime to find out whether<br/>+the operating system supports setting subsecond file timestamps.<br/>+<br/>+As with CORE::utime(), passing undef as both the atime and mtime will<br/>+call the syscall with a NULL argument.<br/>+<br/>+Returns the number of files successfully changed.<br/>+<br/> =back<br/> <br/> =head1 EXAMPLES<br/>diff --git a/dist/Time-HiRes/HiRes.xs b/dist/Time-HiRes/HiRes.xs<br/>index ed60336..ad0b834 100644<br/>--- a/dist/Time-HiRes/HiRes.xs<br/>+++ b/dist/Time-HiRes/HiRes.xs<br/>@@ -921,6 +921,12 @@ nsec_without_unslept(struct timespec *sleepfor,<br/> <br/> #endif<br/> <br/>+/* In case Perl and/or Devel::PPPort are too old, minimally emulate<br/>+ * IS_SAFE_PATHNAME() (which looks for zero bytes in the pathname). */<br/>+ #ifndef IS_SAFE_PATHNAME<br/>+#define IS_SAFE_PATHNAME(pv, len, opname) (((len)&gt;1)&amp;&amp;memchr((pv), 0, (len)-1)?(SETERRNO(ENOENT, LIB_INVARG),Perl_ck_warner(aTHX_ packWARN(WARN_MISC), &quot;Invalid \\0 character in pathname for %s&quot;,opnam ... [17 chars truncated]<br/>+#endif<br/>+<br/> MODULE = Time::HiRes PACKAGE = Time::HiRes<br/> <br/> PROTOTYPES: ENABLE<br/>@@ -1317,6 +1323,83 @@ getitimer(which)<br/> <br/> #endif /* #if defined(HAS_GETITIMER) &amp;&amp; defined(HAS_SETITIMER) */<br/> <br/>+#if defined(TIME_HIRES_UTIME)<br/>+<br/>+I32<br/>+utime(accessed, modified, ...)<br/>+PROTOTYPE: $$@<br/>+ PREINIT:<br/>+ SV* accessed;<br/>+ SV* modified;<br/>+ SV* file;<br/>+<br/>+ struct timespec utbuf[2];<br/>+ struct timespec *utbufp = utbuf;<br/>+ int tot;<br/>+<br/>+ CODE:<br/>+ dXSARGS;<br/>+ accessed = ST(0);<br/>+ modified = ST(1);<br/>+ items -= 2;<br/>+ tot = 0;<br/>+<br/>+ if ( accessed == &amp;PL_sv_undef &amp;&amp; modified == &amp;PL_sv_undef )<br/>+ utbufp = NULL;<br/>+ else {<br/>+ if (SvNV(accessed) &lt; 0.0 || SvNV(modified) &lt; 0.0)<br/>+ croak(&quot;Time::HiRes::utime(%&quot;NVgf&quot;, %&quot;NVgf&quot;): negative time not invented yet&quot;, SvNV(accessed), SvNV(modified));<br/>+ Zero(&amp;utbuf, sizeof utbuf, char);<br/>+ utbuf[0].tv_sec = (Time_t)SvNV(accessed); /* time accessed */<br/>+ utbuf[0].tv_nsec = (long)( ( SvNV(accessed) - utbuf[0].tv_sec ) * 1e9 );<br/>+ utbuf[1].tv_sec = (Time_t)SvNV(modified); /* time modified */<br/>+ utbuf[1].tv_nsec = (long)( ( SvNV(modified) - utbuf[1].tv_sec ) * 1e9 );<br/>+ }<br/>+<br/>+ while (items &gt; 0) {<br/>+ file = POPs; items--;<br/>+<br/>+ if (SvROK(file) &amp;&amp; GvIO(SvRV(file)) &amp;&amp; IoIFP(sv_2io(SvRV(file)))) {<br/>+ int fd = PerlIO_fileno(IoIFP(sv_2io(file)));<br/>+ if (fd &lt; 0)<br/>+ SETERRNO(EBADF,RMS_IFI);<br/>+ else <br/>+#ifdef HAS_FUTIMENS<br/>+ if (futimens(fd, utbufp) == 0)<br/>+ tot++;<br/>+#else /* HAS_FUTIMES */<br/>+ croak(&quot;futimens unimplemented in this platform&quot;);<br/>+#endif /* HAS_FUTIMES */<br/>+ }<br/>+ else {<br/>+#ifdef HAS_UTIMENSAT<br/>+ STRLEN len;<br/>+ char * name = SvPV(file, len);<br/>+ if (IS_SAFE_PATHNAME(name, len, &quot;utime&quot;) &amp;&amp;<br/>+ utimensat(AT_FDCWD, name, utbufp, 0) == 0)<br/>+ tot++;<br/>+#else /* HAS_UTIMENSAT */<br/>+ croak(&quot;utimensat unimplemented in this platform&quot;);<br/>+#endif /* HAS_UTIMENSAT */<br/>+ }<br/>+ } /* while items */<br/>+ RETVAL = tot;<br/>+<br/>+ OUTPUT:<br/>+ RETVAL<br/>+<br/>+#else /* #if defined(TIME_HIRES_UTIME) */<br/>+<br/>+I32<br/>+utime(accessed, modified, ...)<br/>+ CODE:<br/>+ croak(&quot;Time::HiRes::utime(): unimplemented in this platform&quot;);<br/>+ RETVAL = 0;<br/>+ OUTPUT:<br/>+ RETVAL<br/>+<br/>+#endif /* #if defined(TIME_HIRES_UTIME) */<br/>+<br/> #if defined(TIME_HIRES_CLOCK_GETTIME)<br/> <br/> NV<br/>diff --git a/dist/Time-HiRes/Makefile.PL b/dist/Time-HiRes/Makefile.PL<br/>index 087ab79..8622273 100644<br/>--- a/dist/Time-HiRes/Makefile.PL<br/>+++ b/dist/Time-HiRes/Makefile.PL<br/>@@ -354,6 +354,41 @@ int main(int argc, char** argv)<br/> EOM<br/> }<br/> <br/>+sub has_futimens {<br/>+ return 1 if<br/>+ try_compile_and_link(&lt;&lt;EOM);<br/>+#include &quot;EXTERN.h&quot;<br/>+#include &quot;perl.h&quot;<br/>+#include &quot;XSUB.h&quot;<br/>+#include &lt;sys/time.h&gt;<br/>+int main(int argc, char** argv)<br/>+{<br/>+ int ret;<br/>+ struct timespec ts[2];<br/>+ ret = futimens(0, ts);<br/>+ ret == 0 ? exit(0) : exit(errno ? errno : -1);<br/>+}<br/>+EOM<br/>+}<br/>+<br/>+sub has_utimensat{<br/>+ return 1 if<br/>+ try_compile_and_link(&lt;&lt;EOM);<br/>+#include &quot;EXTERN.h&quot;<br/>+#include &quot;perl.h&quot;<br/>+#include &quot;XSUB.h&quot;<br/>+#include &lt;sys/time.h&gt;<br/>+#include &lt;fcntl.h&gt;<br/>+int main(int argc, char** argv)<br/>+{<br/>+ int ret;<br/>+ struct timespec ts[2];<br/>+ ret = utimensat(AT_FDCWD, 0, ts, 0);<br/>+ ret == 0 ? exit(0) : exit(errno ? errno : -1);<br/>+}<br/>+EOM<br/>+}<br/>+<br/> sub DEFINE {<br/> my ($def, $val) = @_;<br/> my $define = defined $val ? &quot;$def=$val&quot; : $def ;<br/>@@ -631,6 +666,36 @@ EOD<br/> print &quot;NOT found.\n&quot;;<br/> }<br/> <br/>+ print &quot;Looking for futimens()... &quot;;<br/>+ my $has_futimens;<br/>+ if (has_futimens()) {<br/>+ $has_futimens++;<br/>+ $DEFINE .= &#39; -DHAS_FUTIMENS&#39;;<br/>+ }<br/>+<br/>+ if ($has_futimens) {<br/>+ print &quot;found.\n&quot;;<br/>+ } else {<br/>+ print &quot;NOT found.\n&quot;;<br/>+ }<br/>+<br/>+ print &quot;Looking for utimensat()... &quot;;<br/>+ my $has_utimensat;<br/>+ if (has_utimensat()) {<br/>+ $has_utimensat++;<br/>+ $DEFINE .= &#39; -DHAS_UTIMENSAT&#39;;<br/>+ }<br/>+<br/>+ if ($has_utimensat) {<br/>+ print &quot;found.\n&quot;;<br/>+ } else {<br/>+ print &quot;NOT found.\n&quot;;<br/>+ }<br/>+<br/>+ if ($has_futimens or $has_utimensat) {<br/>+ $DEFINE .= &#39; -DTIME_HIRES_UTIME&#39;;<br/>+ }<br/>+<br/> print &quot;Looking for stat() subsecond timestamps...\n&quot;;<br/> <br/> print &quot;Trying struct stat st_atimespec.tv_nsec...&quot;;<br/>@@ -644,7 +709,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtimespec++;<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 1);<br/>+ DEFINE(&#39;TIME_HIRES_STAT_ST_XTIMESPEC&#39;); # 1<br/> }<br/> <br/> if ($has_stat_st_xtimespec) {<br/>@@ -664,7 +729,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtimensec++;<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 2);<br/>+ DEFINE(&#39;TIME_HIRES_STAT_ST_XTIMENSEC&#39;); # 2<br/> }<br/> <br/> if ($has_stat_st_xtimensec) {<br/>@@ -684,7 +749,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtime_n++;<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 3);<br/>+ DEFINE(&#39;TIME_HIRES_STAT_ST_XTIME_N&#39;); # 3<br/> }<br/> <br/> if ($has_stat_st_xtime_n) {<br/>@@ -704,7 +769,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_xtim++;<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 4);<br/>+ DEFINE(&#39;TIME_HIRES_STAT_XTIM&#39;); # 4<br/> }<br/> <br/> if ($has_stat_st_xtim) {<br/>@@ -724,7 +789,7 @@ int main(int argc, char** argv) {<br/> }<br/> EOM<br/> $has_stat_st_uxtime++;<br/>- DEFINE(&#39;TIME_HIRES_STAT&#39;, 5);<br/>+ DEFINE(&#39;TIME_HIRES_STAT_ST_UXTIME&#39;); # 5<br/> }<br/> <br/> if ($has_stat_st_uxtime) {<br/>@@ -733,6 +798,19 @@ EOM<br/> print &quot;NOT found.\n&quot;;<br/> }<br/> <br/>+ # See HiRes.xs hrstatns()<br/>+ if ($has_stat_st_xtimespec) {<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 1);<br/>+ } elsif ($has_stat_st_xtimensec) {<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 2);<br/>+ } elsif ($has_stat_st_xtime_n) {<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 3);<br/>+ } elsif ($has_stat_st_xtim) {<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 4);<br/>+ } elsif ($has_stat_st_uxtime) {<br/>+ DEFINE(&#39;TIME_HIRES_STAT&#39;, 5);<br/>+ } <br/>+<br/> if ($DEFINE =~ /-DTIME_HIRES_STAT=\d+/) {<br/> print &quot;You seem to have stat() subsecond timestamps.\n&quot;;<br/> print &quot;(Your struct stat has them, but the filesystems must help.)\n&quot;;<br/>@@ -869,7 +947,7 @@ sub doConstants {<br/> );<br/> foreach (qw (d_usleep d_ualarm d_gettimeofday d_getitimer d_setitimer<br/> d_nanosleep d_clock_gettime d_clock_getres<br/>- d_clock d_clock_nanosleep d_hires_stat)) {<br/>+ d_clock d_clock_nanosleep d_hires_stat d_hires_utime)) {<br/> my $macro = $_;<br/> if ($macro =~ /^(d_nanosleep|d_clock)$/) {<br/> $macro =~ s/^d_(.+)/TIME_HIRES_\U$1/;<br/>@@ -885,6 +963,8 @@ sub doConstants {<br/> push @names, {name =&gt; $_, macro =&gt; $macro, value =&gt; $val,<br/> default =&gt; [&quot;IV&quot;, &quot;0&quot;]};<br/> next;<br/>+ } elsif ($macro =~ /^(d_hires_.*)$/) {<br/>+ $macro =~ s/^d_(.+)/TIME_\U$1/;<br/> } else {<br/> $macro =~ s/^d_(.+)/HAS_\U$1/;<br/> }<br/>diff --git a/dist/Time-HiRes/fallback/const-c.inc b/dist/Time-HiRes/fallback/const-c.inc<br/>index a862617..524db16 100644<br/>--- a/dist/Time-HiRes/fallback/const-c.inc<br/>+++ b/dist/Time-HiRes/fallback/const-c.inc<br/>@@ -19,6 +19,7 @@ typedef double NV; /* 5.6 and later define NVTYPE, and typedef NV to it. */<br/> #ifndef pTHX_<br/> #define pTHX_ /* 5.6 or later define this for threading support. */<br/> #endif<br/>+<br/> static int<br/> constant_11 (pTHX_ const char *name, IV *iv_return) {<br/> /* When generated this function returned values for the list of names given<br/>@@ -87,6 +88,51 @@ constant_11 (pTHX_ const char *name, IV *iv_return) {<br/> }<br/> <br/> static int<br/>+constant_13 (pTHX_ const char *name, IV *iv_return) {<br/>+ /* When generated this function returned values for the list of names given<br/>+ here. However, subsequent manual editing may have added or removed some.<br/>+ CLOCK_HIGHRES TIMER_ABSTIME d_hires_utime */<br/>+ /* Offset 1 gives the best switch position. */<br/>+ switch (name[1]) {<br/>+ case &#39;I&#39;:<br/>+ if (memEQ(name, &quot;TIMER_ABSTIME&quot;, 13)) {<br/>+ /* ^ */<br/>+#ifdef TIMER_ABSTIME<br/>+ *iv_return = TIMER_ABSTIME;<br/>+ return PERL_constant_ISIV;<br/>+#else<br/>+ return PERL_constant_NOTDEF;<br/>+#endif<br/>+ }<br/>+ break;<br/>+ case &#39;L&#39;:<br/>+ if (memEQ(name, &quot;CLOCK_HIGHRES&quot;, 13)) {<br/>+ /* ^ */<br/>+#ifdef CLOCK_HIGHRES<br/>+ *iv_return = CLOCK_HIGHRES;<br/>+ return PERL_constant_ISIV;<br/>+#else<br/>+ return PERL_constant_NOTDEF;<br/>+#endif<br/>+ }<br/>+ break;<br/>+ case &#39;_&#39;:<br/>+ if (memEQ(name, &quot;d_hires_utime&quot;, 13)) {<br/>+ /* ^ */<br/>+#ifdef TIME_HIRES_UTIME<br/>+ *iv_return = 1;<br/>+ return PERL_constant_ISIV;<br/>+#else<br/>+ *iv_return = 0;<br/>+ return PERL_constant_ISIV;<br/>+#endif<br/>+ }<br/>+ break;<br/>+ }<br/>+ return PERL_constant_NOTFOUND;<br/>+}<br/>+<br/>+static int<br/> constant_14 (pTHX_ const char *name, IV *iv_return) {<br/> /* When generated this function returned values for the list of names given<br/> here. However, subsequent manual editing may have added or removed some.<br/>@@ -250,16 +296,17 @@ my @names = (qw(CLOCKS_PER_SEC CLOCK_HIGHRES CLOCK_MONOTONIC<br/> {name=&gt;&quot;d_getitimer&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_GETITIMER&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_gettimeofday&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_GETTIMEOFDAY&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_hires_stat&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;TIME_HIRES_STAT&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/>+ {name=&gt;&quot;d_hires_utime&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;TIME_HIRES_UTIME&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_nanosleep&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;TIME_HIRES_NANOSLEEP&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_setitimer&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_SETITIMER&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_ualarm&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_UALARM&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]},<br/> {name=&gt;&quot;d_usleep&quot;, type=&gt;&quot;IV&quot;, macro=&gt;&quot;HAS_USLEEP&quot;, value=&gt;&quot;1&quot;, default=&gt;[&quot;IV&quot;, &quot;0&quot;]});<br/> <br/>-print constant_types(); # macro defs<br/>+print constant_types(), &quot;\n&quot;; # macro defs<br/> foreach (C_constant (&quot;Time::HiRes&quot;, &#39;constant&#39;, &#39;IV&#39;, $types, undef, 3, @names) ) {<br/> print $_, &quot;\n&quot;; # C constant subs<br/> }<br/>-print &quot;#### XS Section:\n&quot;;<br/>+print &quot;\n#### XS Section:\n&quot;;<br/> print XS_constant (&quot;Time::HiRes&quot;, $types);<br/> __END__<br/> */<br/>@@ -322,33 +369,7 @@ __END__<br/> }<br/> break;<br/> case 13:<br/>- /* Names all of length 13. */<br/>- /* CLOCK_HIGHRES TIMER_ABSTIME */<br/>- /* Offset 2 gives the best switch position. */<br/>- switch (name[2]) {<br/>- case &#39;M&#39;:<br/>- if (memEQ(name, &quot;TIMER_ABSTIME&quot;, 13)) {<br/>- /* ^ */<br/>-#ifdef TIMER_ABSTIME<br/>- *iv_return = TIMER_ABSTIME;<br/>- return PERL_constant_ISIV;<br/>-#else<br/>- return PERL_constant_NOTDEF;<br/>-#endif<br/>- }<br/>- break;<br/>- case &#39;O&#39;:<br/>- if (memEQ(name, &quot;CLOCK_HIGHRES&quot;, 13)) {<br/>- /* ^ */<br/>-#ifdef CLOCK_HIGHRES<br/>- *iv_return = CLOCK_HIGHRES;<br/>- return PERL_constant_ISIV;<br/>-#else<br/>- return PERL_constant_NOTDEF;<br/>-#endif<br/>- }<br/>- break;<br/>- }<br/>+ return constant_13 (aTHX_ name, iv_return);<br/> break;<br/> case 14:<br/> return constant_14 (aTHX_ name, iv_return);<br/>diff --git a/dist/Time-HiRes/t/utime.t b/dist/Time-HiRes/t/utime.t<br/>new file mode 100644<br/>index 0000000..5de86c2<br/>--- /dev/null<br/>+++ b/dist/Time-HiRes/t/utime.t<br/>@@ -0,0 +1,84 @@<br/>+use strict;<br/>+<br/>+BEGIN {<br/>+ require Time::HiRes;<br/>+ unless(&amp;Time::HiRes::d_hires_utime) {<br/>+ require Test::More;<br/>+ Test::More::plan(skip_all =&gt; &quot;no hires_utime()&quot;);<br/>+ }<br/>+}<br/>+<br/>+use Test::More;<br/>+use t::Watchdog;<br/>+use File::Temp qw( tempfile );<br/>+<br/>+use Config;<br/>+<br/>+my $atime = 1.111111111;<br/>+my $mtime = 2.222222222;<br/>+<br/>+subtest &quot;utime \$fh&quot; =&gt; sub {<br/>+ my ($fh, $filename) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>+ is Time::HiRes::utime($atime, $mtime, $fh), 1, &quot;One file changed&quot;;<br/>+ my ($got_atime, $got_mtime) = ( Time::HiRes::stat($filename) )[8, 9];<br/>+ is $got_atime, $atime, &quot;atime set correctly&quot;;<br/>+ is $got_mtime, $mtime, &quot;mtime set correctly&quot;;<br/>+};<br/>+<br/>+subtest &quot;utime \$filename&quot; =&gt; sub {<br/>+ my ($fh, $filename) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>+ is Time::HiRes::utime($atime, $mtime, $filename), 1, &quot;One file changed&quot;;<br/>+ my ($got_atime, $got_mtime) = ( Time::HiRes::stat($fh) )[8, 9];<br/>+ is $got_atime, $atime, &quot;atime set correctly&quot;;<br/>+ is $got_mtime, $mtime, &quot;mtime set correctly&quot;;<br/>+};<br/>+<br/>+subtest &quot;utime \$filename and \$fh&quot; =&gt; sub {<br/>+ my ($fh1, $filename1) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>+ my ($fh2, $filename2) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>+ is Time::HiRes::utime($atime, $mtime, $filename1, $fh2), 2, &quot;Two files changed&quot;;<br/>+ {<br/>+ my ($got_atime, $got_mtime) = ( Time::HiRes::stat($fh1) )[8, 9];<br/>+ is $got_atime, $atime, &quot;File 1 atime set correctly&quot;;<br/>+ is $got_mtime, $mtime, &quot;File 1 mtime set correctly&quot;;<br/>+ }<br/>+ {<br/>+ my ($got_atime, $got_mtime) = ( Time::HiRes::stat($filename2) )[8, 9];<br/>+ is $got_atime, $atime, &quot;File 2 atime set correctly&quot;;<br/>+ is $got_mtime, $mtime, &quot;File 2 mtime set correctly&quot;;<br/>+ }<br/>+};<br/>+<br/>+subtest &quot;utime undef sets time to now&quot; =&gt; sub {<br/>+ my ($fh1, $filename1) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>+ my ($fh2, $filename2) = tempfile( &quot;Time-HiRes-utime-XXXXXXXXX&quot;, UNLINK =&gt; 1 );<br/>+<br/>+ my $now = Time::HiRes::time;<br/>+ is Time::HiRes::utime(undef, undef, $filename1, $fh2), 2, &quot;Two files changed&quot;;<br/>+<br/>+ {<br/>+ my ($got_atime, $got_mtime) = ( Time::HiRes::stat($fh1) )[8, 9];<br/>+ cmp_ok abs( $got_atime - $now), &#39;&lt;&#39;, 0.1, &quot;File 1 atime set correctly&quot;;<br/>+ cmp_ok abs( $got_mtime - $now), &#39;&lt;&#39;, 0.1, &quot;File 1 mtime set correctly&quot;;<br/>+ }<br/>+ {<br/>+ my ($got_atime, $got_mtime) = ( Time::HiRes::stat($filename2) )[8, 9];<br/>+ cmp_ok abs( $got_atime - $now), &#39;&lt;&#39;, 0.1, &quot;File 2 atime set correctly&quot;;<br/>+ cmp_ok abs( $got_mtime - $now), &#39;&lt;&#39;, 0.1, &quot;File 2 mtime set correctly&quot;;<br/>+ }<br/>+};<br/>+<br/>+subtest &quot;negative atime dies&quot; =&gt; sub {<br/>+ eval { Time::HiRes::utime(-4, $mtime) };<br/>+ like $@, qr/::utime\(-4, 2\.22222\): negative time not invented yet/,<br/>+ &quot;negative time error&quot;;<br/>+};<br/>+<br/>+subtest &quot;negative mtime dies&quot; =&gt; sub {<br/>+ eval { Time::HiRes::utime($atime, -4) };<br/>+ like $@, qr/::utime\(1.11111, -4\): negative time not invented yet/,<br/>+ &quot;negative time error&quot;;<br/>+};<br/>+<br/>+done_testing;<br/>+1;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47477.html Tue, 21 Jun 2016 14:28:29 +0000 [perl.git] branch blead, updated. v5.25.2-13-g4827ac7 by Chris 'Bingos' Williams In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/4827ac7e56d329e2bcf028d5472ae4b3407a71d8?hp=17529fac2380ba2f4761aee843738199976ae966&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 4827ac7e56d329e2bcf028d5472ae4b3407a71d8<br/>Author: Chris &#39;BinGOs&#39; Williams &lt;chris@bingosnet.co.uk&gt;<br/>Date: Tue Jun 21 14:57:44 2016 +0100<br/><br/> Fix Maintainers.pl after 94e22bd6<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> Porting/Maintainers.pl | 2 +-<br/> 1 file changed, 1 insertion(+), 1 deletion(-)<br/><br/>diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl<br/>index ee3d422..0a97c3a 100755<br/>--- a/Porting/Maintainers.pl<br/>+++ b/Porting/Maintainers.pl<br/>@@ -340,7 +340,7 @@ use File::Glob qw(:case);<br/> },<br/> <br/> &#39;Devel::PPPort&#39; =&gt; {<br/>- &#39;DISTRIBUTION&#39; =&gt; &#39;WOLFSAGE/Devel-PPPort-3.32.tar.gz&#39;,<br/>+ &#39;DISTRIBUTION&#39; =&gt; &#39;WOLFSAGE/Devel-PPPort-3.35.tar.gz&#39;,<br/> # RJBS has asked MHX to have UPSTREAM be &#39;blead&#39;<br/> # (i.e. move this from cpan/ to dist/)<br/> &#39;FILES&#39; =&gt; q[cpan/Devel-PPPort],<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47476.html Tue, 21 Jun 2016 13:58:00 +0000 [perl.git] branch blead, updated. v5.25.2-12-g17529fa by Matthew Horsfall In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/17529fac2380ba2f4761aee843738199976ae966?hp=bf49eae4014ca7ff7b44362d99251f5b9f30bec8&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 17529fac2380ba2f4761aee843738199976ae966<br/>Author: Matthew Horsfall &lt;wolfsage@gmail.com&gt;<br/>Date: Tue Jun 21 09:33:24 2016 -0400<br/><br/> Correct comment in t/porting/manifest.<br/> <br/> There is no &#39;make manifest&#39; but there is a &#39;make manisort&#39;.<br/><br/>M t/porting/manifest.t<br/><br/>commit 94e22bd6136e123eae522a02d51cbba06bc7c203<br/>Author: Matthew Horsfall &lt;wolfsage@gmail.com&gt;<br/>Date: Tue Jun 21 08:21:32 2016 -0400<br/><br/> Update Devel-PPPort to CPAN version 3.35<br/> <br/> [DELTA]<br/> <br/> 3.35 - 2016-06-17<br/> <br/> * Fix compilation in bleadperl by removing a bad test.<br/> <br/> 3.34 - 2016-06-04<br/> <br/> * Fix compilation on Windows with certain compilers.<br/> (__attribute__ not recognized. (#GH 36))<br/><br/>M MANIFEST<br/>M cpan/Devel-PPPort/PPPort_pm.PL<br/>M cpan/Devel-PPPort/parts/apicheck.pl<br/>M cpan/Devel-PPPort/parts/apidoc.fnc<br/>M cpan/Devel-PPPort/parts/base/5004000<br/>M cpan/Devel-PPPort/parts/base/5004050<br/>M cpan/Devel-PPPort/parts/base/5006000<br/>M cpan/Devel-PPPort/parts/base/5007003<br/>M cpan/Devel-PPPort/parts/base/5008001<br/>M cpan/Devel-PPPort/parts/base/5009003<br/>M cpan/Devel-PPPort/parts/base/5009004<br/>M cpan/Devel-PPPort/parts/base/5013000<br/>M cpan/Devel-PPPort/parts/base/5013002<br/>M cpan/Devel-PPPort/parts/base/5015004<br/>A cpan/Devel-PPPort/parts/base/5020002<br/>A cpan/Devel-PPPort/parts/base/5020003<br/>M cpan/Devel-PPPort/parts/base/5021001<br/>M cpan/Devel-PPPort/parts/base/5021002<br/>M cpan/Devel-PPPort/parts/base/5021007<br/>M cpan/Devel-PPPort/parts/base/5021008<br/>A cpan/Devel-PPPort/parts/base/5021009<br/>A cpan/Devel-PPPort/parts/base/5021010<br/>A cpan/Devel-PPPort/parts/base/5021011<br/>A cpan/Devel-PPPort/parts/base/5022000<br/>A cpan/Devel-PPPort/parts/base/5022001<br/>A cpan/Devel-PPPort/parts/base/5023000<br/>A cpan/Devel-PPPort/parts/base/5023001<br/>A cpan/Devel-PPPort/parts/base/5023002<br/>A cpan/Devel-PPPort/parts/base/5023003<br/>A cpan/Devel-PPPort/parts/base/5023004<br/>A cpan/Devel-PPPort/parts/base/5023005<br/>A cpan/Devel-PPPort/parts/base/5023006<br/>A cpan/Devel-PPPort/parts/base/5023007<br/>A cpan/Devel-PPPort/parts/base/5023008<br/>A cpan/Devel-PPPort/parts/base/5023009<br/>A cpan/Devel-PPPort/parts/base/5024000<br/>M cpan/Devel-PPPort/parts/embed.fnc<br/>M cpan/Devel-PPPort/parts/inc/gv<br/>M cpan/Devel-PPPort/parts/inc/magic<br/>M cpan/Devel-PPPort/parts/inc/misc<br/>M cpan/Devel-PPPort/parts/inc/variables<br/>M cpan/Devel-PPPort/parts/ppptools.pl<br/>M cpan/Devel-PPPort/parts/todo/5004000<br/>M cpan/Devel-PPPort/parts/todo/5004050<br/>M cpan/Devel-PPPort/parts/todo/5006000<br/>M cpan/Devel-PPPort/parts/todo/5007003<br/>M cpan/Devel-PPPort/parts/todo/5009005<br/>M cpan/Devel-PPPort/parts/todo/5015004<br/>A cpan/Devel-PPPort/parts/todo/5020002<br/>A cpan/Devel-PPPort/parts/todo/5020003<br/>M cpan/Devel-PPPort/parts/todo/5021002<br/>M cpan/Devel-PPPort/parts/todo/5021007<br/>M cpan/Devel-PPPort/parts/todo/5021008<br/>A cpan/Devel-PPPort/parts/todo/5021009<br/>A cpan/Devel-PPPort/parts/todo/5021010<br/>A cpan/Devel-PPPort/parts/todo/5021011<br/>A cpan/Devel-PPPort/parts/todo/5022000<br/>A cpan/Devel-PPPort/parts/todo/5022001<br/>A cpan/Devel-PPPort/parts/todo/5023000<br/>A cpan/Devel-PPPort/parts/todo/5023001<br/>A cpan/Devel-PPPort/parts/todo/5023002<br/>A cpan/Devel-PPPort/parts/todo/5023003<br/>A cpan/Devel-PPPort/parts/todo/5023004<br/>A cpan/Devel-PPPort/parts/todo/5023005<br/>A cpan/Devel-PPPort/parts/todo/5023006<br/>A cpan/Devel-PPPort/parts/todo/5023007<br/>A cpan/Devel-PPPort/parts/todo/5023008<br/>A cpan/Devel-PPPort/parts/todo/5023009<br/>A cpan/Devel-PPPort/parts/todo/5024000<br/>M cpan/Devel-PPPort/soak<br/>M cpan/Devel-PPPort/t/gv.t<br/>M cpan/Devel-PPPort/t/misc.t<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> MANIFEST | 36 +++<br/> cpan/Devel-PPPort/PPPort_pm.PL | 2 +-<br/> cpan/Devel-PPPort/parts/apicheck.pl | 6 +-<br/> cpan/Devel-PPPort/parts/apidoc.fnc | 25 +-<br/> cpan/Devel-PPPort/parts/base/5004000 | 5 +-<br/> cpan/Devel-PPPort/parts/base/5004050 | 1 +<br/> cpan/Devel-PPPort/parts/base/5006000 | 3 +<br/> cpan/Devel-PPPort/parts/base/5007003 | 4 -<br/> cpan/Devel-PPPort/parts/base/5008001 | 1 +<br/> cpan/Devel-PPPort/parts/base/5009003 | 1 -<br/> cpan/Devel-PPPort/parts/base/5009004 | 1 -<br/> cpan/Devel-PPPort/parts/base/5013000 | 1 +<br/> cpan/Devel-PPPort/parts/base/5013002 | 1 +<br/> cpan/Devel-PPPort/parts/base/5015004 | 1 +<br/> cpan/Devel-PPPort/parts/base/5020002 | 1 +<br/> cpan/Devel-PPPort/parts/base/5020003 | 1 +<br/> cpan/Devel-PPPort/parts/base/5021001 | 1 +<br/> cpan/Devel-PPPort/parts/base/5021002 | 1 -<br/> cpan/Devel-PPPort/parts/base/5021007 | 1 -<br/> cpan/Devel-PPPort/parts/base/5021008 | 64 -----<br/> cpan/Devel-PPPort/parts/base/5021009 | 1 +<br/> cpan/Devel-PPPort/parts/base/5021010 | 2 +<br/> cpan/Devel-PPPort/parts/base/5021011 | 4 +<br/> cpan/Devel-PPPort/parts/base/5022000 | 2 +<br/> cpan/Devel-PPPort/parts/base/5022001 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023000 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023001 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023002 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023003 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023004 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023005 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023006 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023007 | 1 +<br/> cpan/Devel-PPPort/parts/base/5023008 | 22 ++<br/> cpan/Devel-PPPort/parts/base/5023009 | 5 +<br/> cpan/Devel-PPPort/parts/base/{5021008 =&gt; 5024000} | 6 +-<br/> cpan/Devel-PPPort/parts/embed.fnc | 292 +++++++++++++++-------<br/> cpan/Devel-PPPort/parts/inc/gv | 50 +++-<br/> cpan/Devel-PPPort/parts/inc/magic | 4 +-<br/> cpan/Devel-PPPort/parts/inc/misc | 176 ++++++++++++-<br/> cpan/Devel-PPPort/parts/inc/variables | 9 +-<br/> cpan/Devel-PPPort/parts/ppptools.pl | 2 +-<br/> cpan/Devel-PPPort/parts/todo/5004000 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5004050 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5006000 | 3 +<br/> cpan/Devel-PPPort/parts/todo/5007003 | 4 -<br/> cpan/Devel-PPPort/parts/todo/5009005 | 2 -<br/> cpan/Devel-PPPort/parts/todo/5015004 | 2 +-<br/> cpan/Devel-PPPort/parts/todo/5020002 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5020003 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5021002 | 1 -<br/> cpan/Devel-PPPort/parts/todo/5021007 | 3 -<br/> cpan/Devel-PPPort/parts/todo/5021008 | 41 ---<br/> cpan/Devel-PPPort/parts/todo/5021009 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5021010 | 2 +<br/> cpan/Devel-PPPort/parts/todo/5021011 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5022000 | 2 +<br/> cpan/Devel-PPPort/parts/todo/5022001 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023000 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023001 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023002 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023003 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023004 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023005 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023006 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023007 | 1 +<br/> cpan/Devel-PPPort/parts/todo/5023008 | 22 ++<br/> cpan/Devel-PPPort/parts/todo/5023009 | 5 +<br/> cpan/Devel-PPPort/parts/todo/{5021008 =&gt; 5024000} | 6 +-<br/> cpan/Devel-PPPort/soak | 2 +-<br/> cpan/Devel-PPPort/t/gv.t | 7 +-<br/> cpan/Devel-PPPort/t/misc.t | 24 +-<br/> t/porting/manifest.t | 2 +-<br/> 73 files changed, 638 insertions(+), 246 deletions(-)<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5020002<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5020003<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5021009<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5021010<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5021011<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5022000<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5022001<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023000<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023001<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023002<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023003<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023004<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023005<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023006<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023007<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023008<br/> create mode 100644 cpan/Devel-PPPort/parts/base/5023009<br/> copy cpan/Devel-PPPort/parts/base/{5021008 =&gt; 5024000} (95%)<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5020002<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5020003<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5021009<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5021010<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5021011<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5022000<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5022001<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023000<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023001<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023002<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023003<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023004<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023005<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023006<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023007<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023008<br/> create mode 100644 cpan/Devel-PPPort/parts/todo/5023009<br/> copy cpan/Devel-PPPort/parts/todo/{5021008 =&gt; 5024000} (92%)<br/><br/>diff --git a/MANIFEST b/MANIFEST<br/>index 3240e37..25252df 100644<br/>--- a/MANIFEST<br/>+++ b/MANIFEST<br/>@@ -565,6 +565,8 @@ cpan/Devel-PPPort/parts/base/5019010 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5019011 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5020000 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5020001 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5020002 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5020003 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5021000 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5021001 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5021002 Devel::PPPort baseline todo file<br/>@@ -573,6 +575,22 @@ cpan/Devel-PPPort/parts/base/5021005 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5021006 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5021007 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/base/5021008 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5021009 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5021010 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5021011 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5022000 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5022001 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023000 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023001 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023002 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023003 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023004 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023005 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023006 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023007 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023008 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5023009 Devel::PPPort baseline todo file<br/>+cpan/Devel-PPPort/parts/base/5024000 Devel::PPPort baseline todo file<br/> cpan/Devel-PPPort/parts/embed.fnc Devel::PPPort Perl API listing<br/> cpan/Devel-PPPort/parts/inc/call Devel::PPPort include<br/> cpan/Devel-PPPort/parts/inc/cop Devel::PPPort include<br/>@@ -723,6 +741,8 @@ cpan/Devel-PPPort/parts/todo/5019010 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5019011 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5020000 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5020001 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5020002 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5020003 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5021000 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5021001 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5021002 Devel::PPPort todo file<br/>@@ -731,6 +751,22 @@ cpan/Devel-PPPort/parts/todo/5021005 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5021006 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5021007 Devel::PPPort todo file<br/> cpan/Devel-PPPort/parts/todo/5021008 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5021009 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5021010 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5021011 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5022000 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5022001 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023000 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023001 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023002 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023003 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023004 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023005 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023006 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023007 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023008 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5023009 Devel::PPPort todo file<br/>+cpan/Devel-PPPort/parts/todo/5024000 Devel::PPPort todo file<br/> cpan/Devel-PPPort/ppport_h.PL Devel::PPPort ppport.h writer<br/> cpan/Devel-PPPort/PPPort_pm.PL Devel::PPPort PPPort.pm writer<br/> cpan/Devel-PPPort/PPPort.xs Devel::PPPort dummy PPPort.xs<br/>diff --git a/cpan/Devel-PPPort/PPPort_pm.PL b/cpan/Devel-PPPort/PPPort_pm.PL<br/>index 0bee17a..ad75b13 100644<br/>--- a/cpan/Devel-PPPort/PPPort_pm.PL<br/>+++ b/cpan/Devel-PPPort/PPPort_pm.PL<br/>@@ -539,7 +539,7 @@ package Devel::PPPort;<br/> use strict;<br/> use vars qw($VERSION $data);<br/> <br/>-$VERSION = &#39;3.32&#39;;<br/>+$VERSION = &#39;3.35&#39;;<br/> <br/> sub _init_data<br/> {<br/>diff --git a/cpan/Devel-PPPort/parts/apicheck.pl b/cpan/Devel-PPPort/parts/apicheck.pl<br/>index cb59f4b..ac119a6 100644<br/>--- a/cpan/Devel-PPPort/parts/apicheck.pl<br/>+++ b/cpan/Devel-PPPort/parts/apicheck.pl<br/>@@ -144,15 +144,17 @@ print OUT &lt;&lt;HEAD;<br/> #define NEED_grok_number<br/> #define NEED_grok_numeric_radix<br/> #define NEED_grok_oct<br/>+#define NEED_gv_fetchpvn_flags<br/> #define NEED_load_module<br/>+#define NEED_mg_findext<br/> #define NEED_my_snprintf<br/> #define NEED_my_sprintf<br/>-#define NEED_mg_findext<br/> #define NEED_my_strlcat<br/> #define NEED_my_strlcpy<br/> #define NEED_newCONSTSUB<br/> #define NEED_newRV_noinc<br/> #define NEED_newSV_type<br/>+#define NEED_newSVpvn_flags<br/> #define NEED_newSVpvn_share<br/> #define NEED_pv_display<br/> #define NEED_pv_escape<br/>@@ -165,10 +167,10 @@ print OUT &lt;&lt;HEAD;<br/> #define NEED_sv_setpvf_mg<br/> #define NEED_sv_setpvf_mg_nocontext<br/> #define NEED_sv_unmagicext<br/>+#define NEED_SvRX<br/> #define NEED_vload_module<br/> #define NEED_vnewSVpvf<br/> #define NEED_warner<br/>-#define NEED_newSVpvn_flags<br/> <br/> #include &quot;ppport.h&quot;<br/> <br/>diff --git a/cpan/Devel-PPPort/parts/apidoc.fnc b/cpan/Devel-PPPort/parts/apidoc.fnc<br/>index 058c363..fe15354 100644<br/>--- a/cpan/Devel-PPPort/parts/apidoc.fnc<br/>+++ b/cpan/Devel-PPPort/parts/apidoc.fnc<br/>@@ -78,13 +78,16 @@ Amn|SV|PL_sv_undef<br/> Amn|SV|PL_sv_yes<br/> Amn|U32|GIMME<br/> Amn|U32|GIMME_V<br/>+Amn|UV|POPu<br/> Amn|char*|CLASS<br/> Amn|char*|POPp<br/> Amn|char*|POPpbytex<br/> Amn|char*|POPpx<br/> Amn|long|POPl<br/>+Amn|long|POPul<br/> Amn|peep_t|PL_peepp<br/> Amn|peep_t|PL_rpeepp<br/>+Amn|void|DECLARATION_FOR_LC_NUMERIC_MANIPULATION<br/> Ams||ENTER<br/> Ams||FREETMPS<br/> Ams||LEAVE<br/>@@ -175,6 +178,7 @@ Am|NV|SvNV_nomg|SV* sv<br/> Am|NV|SvNVx|SV* sv<br/> Am|NV|SvNV|SV* sv<br/> Am|OP*|LINKLIST|OP *o<br/>+Am|OP*|OpSIBLING|OP *o<br/> Am|PADOFFSET|pad_add_name_pvs|const char *name|U32 flags|HV *typestash|HV *ourstash<br/> Am|PADOFFSET|pad_findmy_pvs|const char *name|U32 flags<br/> Am|REGEXP *|SvRX|SV *sv<br/>@@ -183,6 +187,8 @@ Am|STRLEN|HvENAMELEN|HV *stash<br/> Am|STRLEN|HvNAMELEN|HV *stash<br/> Am|STRLEN|SvCUR|SV* sv<br/> Am|STRLEN|SvLEN|SV* sv<br/>+Am|STRLEN|UTF8SKIP|char* s<br/>+Am|STRLEN|UVCHR_SKIP|UV cp<br/> Am|STRLEN|isUTF8_CHAR|const U8 *s|const U8 *e<br/> Am|SV *|boolSV|bool b<br/> Am|SV *|cop_hints_fetch_pvn|const COP *cop|const char *keypv|STRLEN keylen|U32 hash|U32 flags<br/>@@ -235,19 +241,18 @@ Am|UV|SvUVX|SV* sv<br/> Am|UV|SvUV_nomg|SV* sv<br/> Am|UV|SvUVx|SV* sv<br/> Am|UV|SvUV|SV* sv<br/>-Am|UV|toFOLD_uni|UV cp|U8* s|STRLEN* lenp<br/> Am|UV|toFOLD_utf8|U8* p|U8* s|STRLEN* lenp<br/>-Am|UV|toLOWER_uni|UV cp|U8* s|STRLEN* lenp<br/>+Am|UV|toFOLD_uvchr|UV cp|U8* s|STRLEN* lenp<br/> Am|UV|toLOWER_utf8|U8* p|U8* s|STRLEN* lenp<br/>-Am|UV|toTITLE_uni|UV cp|U8* s|STRLEN* lenp<br/>+Am|UV|toLOWER_uvchr|UV cp|U8* s|STRLEN* lenp<br/> Am|UV|toTITLE_utf8|U8* p|U8* s|STRLEN* lenp<br/>-Am|UV|toUPPER_uni|UV cp|U8* s|STRLEN* lenp<br/>+Am|UV|toTITLE_uvchr|UV cp|U8* s|STRLEN* lenp<br/> Am|UV|toUPPER_utf8|U8* p|U8* s|STRLEN* lenp<br/>+Am|UV|toUPPER_uvchr|UV cp|U8* s|STRLEN* lenp<br/>+Am|bool|DO_UTF8|SV* sv<br/> Am|bool|OP_TYPE_IS_OR_WAS|OP *o|Optype type<br/> Am|bool|OP_TYPE_IS|OP *o|Optype type<br/> Am|bool|OpHAS_SIBLING|OP *o<br/>-Am|bool|OpSIBLING_set|OP *o|OP *sib<br/>-Am|bool|OpSIBLING|OP *o<br/> Am|bool|SvIOK_UV|SV* sv<br/> Am|bool|SvIOK_notUV|SV* sv<br/> Am|bool|SvIsCOW_shared_hash|SV* sv<br/>@@ -275,6 +280,8 @@ Am|bool|isSPACE|char ch<br/> Am|bool|isUPPER|char ch<br/> Am|bool|isWORDCHAR|char ch<br/> Am|bool|isXDIGIT|char ch<br/>+Am|bool|memEQ|char* s1|char* s2|STRLEN len<br/>+Am|bool|memNE|char* s1|char* s2|STRLEN len<br/> Am|bool|strEQ|char* s1|char* s2<br/> Am|bool|strGE|char* s1|char* s2<br/> Am|bool|strGT|char* s1|char* s2<br/>@@ -322,6 +329,9 @@ Am|void|Move|void* src|void* dest|int nitems|type<br/> Am|void|Newxc|void* ptr|int nitems|type|cast<br/> Am|void|Newxz|void* ptr|int nitems|type<br/> Am|void|Newx|void* ptr|int nitems|type<br/>+Am|void|OpLASTSIB_set|OP *o|OP *parent<br/>+Am|void|OpMAYBESIB_set|OP *o|OP *sib|OP *parent<br/>+Am|void|OpMORESIB_set|OP *o|OP *sib<br/> Am|void|PERL_SYS_INIT3|int *argc|char*** argv|char*** env<br/> Am|void|PERL_SYS_INIT|int *argc|char*** argv<br/> Am|void|PERL_SYS_TERM|<br/>@@ -336,8 +346,11 @@ Am|void|PoisonFree|void* dest|int nitems|type<br/> Am|void|PoisonNew|void* dest|int nitems|type<br/> Am|void|PoisonWith|void* dest|int nitems|type|U8 byte<br/> Am|void|Poison|void* dest|int nitems|type<br/>+Am|void|RESTORE_LC_NUMERIC<br/> Am|void|Renewc|void* ptr|int nitems|type|cast<br/> Am|void|Renew|void* ptr|int nitems|type<br/>+Am|void|STORE_LC_NUMERIC_FORCE_TO_UNDERLYING<br/>+Am|void|STORE_LC_NUMERIC_SET_TO_NEEDED<br/> Am|void|Safefree|void* ptr<br/> Am|void|StructCopy|type *src|type *dest|type<br/> Am|void|SvCUR_set|SV* sv|STRLEN len<br/>diff --git a/cpan/Devel-PPPort/parts/base/5004000 b/cpan/Devel-PPPort/parts/base/5004000<br/>index ae821b9..38b77a1 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5004000<br/>+++ b/cpan/Devel-PPPort/parts/base/5004000<br/>@@ -3,6 +3,7 @@ GIMME_V # E<br/> G_VOID # E<br/> HePV # A<br/> HeSVKEY_set # U<br/>+POPu # E<br/> PUSHu # U<br/> SvSetMagicSV # U<br/> SvSetMagicSV_nosteal # U<br/>@@ -27,6 +28,8 @@ hv_free_ent # E<br/> ibcmp_locale # U<br/> intro_my # E<br/> isPRINT # U<br/>+memEQ # U<br/>+memNE # U<br/> my_failure_exit # E<br/> newRV_inc # U<br/> newRV_noinc # E<br/>@@ -47,5 +50,3 @@ sv_vcatpvfn # E<br/> sv_vsetpvfn # E<br/> toLOWER_LC # U<br/> SvUVXx # added by devel/scanprov<br/>-memEQ # added by devel/scanprov<br/>-memNE # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5004050 b/cpan/Devel-PPPort/parts/base/5004050<br/>index 82fdcf0..daf95d5 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5004050<br/>+++ b/cpan/Devel-PPPort/parts/base/5004050<br/>@@ -5,6 +5,7 @@ PL_sv_undef # E<br/> PL_sv_yes # E<br/> SvGETMAGIC # U<br/> do_binmode # E<br/>+my_bcopy # U<br/> newCONSTSUB # E<br/> newSVpvn # E<br/> save_aelem # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5006000 b/cpan/Devel-PPPort/parts/base/5006000<br/>index 6748296..6cf8275 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5006000<br/>+++ b/cpan/Devel-PPPort/parts/base/5006000<br/>@@ -1,6 +1,8 @@<br/> 5.006000<br/>+DO_UTF8 # U<br/> PERL_SYS_INIT3 # U<br/> POPn # E<br/>+POPul # E<br/> PUSHn # E<br/> SvIOK_UV # U<br/> SvIOK_notUV # U<br/>@@ -23,6 +25,7 @@ SvPVutf8x_force # U<br/> SvUTF8 # U<br/> SvUTF8_off # U<br/> SvUTF8_on # U<br/>+UTF8SKIP # U<br/> XPUSHn # E<br/> XSRETURN_NV # E<br/> XST_mNV # E<br/>diff --git a/cpan/Devel-PPPort/parts/base/5007003 b/cpan/Devel-PPPort/parts/base/5007003<br/>index 9347217..127a118 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5007003<br/>+++ b/cpan/Devel-PPPort/parts/base/5007003<br/>@@ -53,10 +53,6 @@ sv_nosharing # U<br/> sv_pvn_nomg # U<br/> sv_recode_to_utf8 # U<br/> sv_uni_display # U<br/>-toFOLD_uni # U<br/>-toLOWER_uni # A<br/>-toTITLE_uni # A<br/>-toUPPER_uni # A<br/> to_uni_fold # U<br/> to_uni_lower # E (Perl_to_uni_lower)<br/> to_uni_title # E (Perl_to_uni_title)<br/>diff --git a/cpan/Devel-PPPort/parts/base/5008001 b/cpan/Devel-PPPort/parts/base/5008001<br/>index 48a800a..93df2b4 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5008001<br/>+++ b/cpan/Devel-PPPort/parts/base/5008001<br/>@@ -17,6 +17,7 @@ sv_cat_decode # U<br/> sv_setpviv # U<br/> sv_setpviv_mg # U<br/> unpackstring # U<br/>+C_ARRAY_LENGTH # added by devel/scanprov<br/> IN_PERL_COMPILETIME # added by devel/scanprov<br/> PERL_ABS # added by devel/scanprov<br/> PERL_GCC_BRACE_GROUPS_FORBIDDEN # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5009003 b/cpan/Devel-PPPort/parts/base/5009003<br/>index e8f1065..8b69a99 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5009003<br/>+++ b/cpan/Devel-PPPort/parts/base/5009003<br/>@@ -36,7 +36,6 @@ savepvs # U<br/> sortsv_flags # U<br/> sv_catpvs # U<br/> vverify # U<br/>-GvSVn # added by devel/scanprov<br/> HvNAMELEN_get # added by devel/scanprov<br/> HvNAME_get # added by devel/scanprov<br/> PERLIO_FUNCS_CAST # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5009004 b/cpan/Devel-PPPort/parts/base/5009004<br/>index fa236f0..5a2f6b8 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5009004<br/>+++ b/cpan/Devel-PPPort/parts/base/5009004<br/>@@ -40,4 +40,3 @@ PERL_USE_GCC_BRACE_GROUPS # added by devel/scanprov<br/> SV_HAS_TRAILING_NUL # added by devel/scanprov<br/> SvVSTRING_mg # added by devel/scanprov<br/> gv_fetchpvs # added by devel/scanprov<br/>-isGV_with_GP # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5013000 b/cpan/Devel-PPPort/parts/base/5013000<br/>index f2f116d..8a31cc7 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5013000<br/>+++ b/cpan/Devel-PPPort/parts/base/5013000<br/>@@ -1 +1,2 @@<br/> 5.013000<br/>+cBOOL # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5013002 b/cpan/Devel-PPPort/parts/base/5013002<br/>index fa6d99b..5058d1e 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5013002<br/>+++ b/cpan/Devel-PPPort/parts/base/5013002<br/>@@ -7,3 +7,4 @@ foldEQ_utf8 # U<br/> hv_fill # U<br/> sv_dec_nomg # U<br/> sv_inc_nomg # U<br/>+C_ARRAY_END # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5015004 b/cpan/Devel-PPPort/parts/base/5015004<br/>index e25404d..516327e 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5015004<br/>+++ b/cpan/Devel-PPPort/parts/base/5015004<br/>@@ -25,6 +25,7 @@ sv_derived_from_sv # U<br/> sv_does_pv # U<br/> sv_does_pvn # U<br/> sv_does_sv # U<br/>+sv_ref # U<br/> whichsig_pv # U<br/> whichsig_pvn # U<br/> whichsig_sv # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5020002 b/cpan/Devel-PPPort/parts/base/5020002<br/>new file mode 100644<br/>index 0000000..e31c0d0<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5020002<br/>@@ -0,0 +1 @@<br/>+5.020002<br/>diff --git a/cpan/Devel-PPPort/parts/base/5020003 b/cpan/Devel-PPPort/parts/base/5020003<br/>new file mode 100644<br/>index 0000000..89ec619<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5020003<br/>@@ -0,0 +1 @@<br/>+5.020003<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021001 b/cpan/Devel-PPPort/parts/base/5021001<br/>index 6e66213..353feda 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5021001<br/>+++ b/cpan/Devel-PPPort/parts/base/5021001<br/>@@ -10,3 +10,4 @@ isIDFIRST_lazy # U<br/> isUTF8_CHAR # U<br/> markstack_grow # E (Perl_markstack_grow)<br/> my_strerror # U<br/>+PERL_UNUSED_RESULT # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021002 b/cpan/Devel-PPPort/parts/base/5021002<br/>index 1e17e3d..abe5ac1 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5021002<br/>+++ b/cpan/Devel-PPPort/parts/base/5021002<br/>@@ -1,4 +1,3 @@<br/> 5.021002<br/> grok_number_flags # U<br/>-op_parent # U<br/> op_sibling_splice # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021007 b/cpan/Devel-PPPort/parts/base/5021007<br/>index 03c81e0..bcaa19c 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5021007<br/>+++ b/cpan/Devel-PPPort/parts/base/5021007<br/>@@ -1,7 +1,6 @@<br/> 5.021007<br/> OpHAS_SIBLING # U<br/> OpSIBLING # U<br/>-OpSIBLING_set # U<br/> PadnameUTF8 # E<br/> is_invariant_string # U<br/> newPADNAMELIST # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021008 b/cpan/Devel-PPPort/parts/base/5021008<br/>index 7a8f642..ccba00c 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5021008<br/>+++ b/cpan/Devel-PPPort/parts/base/5021008<br/>@@ -1,66 +1,2 @@<br/> 5.021008<br/>-BhkDISABLE # E<br/>-BhkENABLE # E<br/>-BhkENTRY_set # E<br/>-MULTICALL # E<br/>-PERL_SYS_TERM # E<br/>-POP_MULTICALL # E<br/>-PUSH_MULTICALL # E<br/>-PadARRAY # E<br/>-PadMAX # E<br/>-PadlistARRAY # E<br/>-PadlistMAX # E<br/>-PadlistNAMES # E<br/>-PadlistNAMESARRAY # E<br/>-PadlistNAMESMAX # E<br/>-PadnameLEN # E<br/>-PadnamePV # E<br/>-PadnameREFCNT # E<br/>-PadnameREFCNT_dec # E<br/>-PadnameSV # E<br/>-PadnamelistARRAY # E<br/>-PadnamelistMAX # E<br/>-PadnamelistREFCNT # E<br/>-PadnamelistREFCNT_dec # E<br/>-XS_APIVERSION_BOOTCHECK # E<br/>-XS_EXTERNAL # E<br/>-XS_INTERNAL # E<br/>-XS_VERSION_BOOTCHECK # E<br/>-XopDISABLE # E<br/>-XopENABLE # E<br/>-XopENTRY # E<br/>-XopENTRYCUSTOM # E<br/>-XopENTRY_set # E<br/>-cophh_new_empty # E<br/>-my_lstat # U (Perl_my_lstat)<br/>-my_stat # U (Perl_my_stat)<br/>-reentrant_free # U<br/>-reentrant_init # U<br/>-reentrant_retry # U<br/>-reentrant_size # U<br/>-ref # U (Perl_ref)<br/> sv_get_backrefs # U<br/>-sv_magic_portable # U<br/>-sv_setref_pvs # A<br/>-PERL_BCDVERSION # added by devel/scanprov<br/>-PERL_MAGIC_glob # added by devel/scanprov<br/>-PERL_MAGIC_mutex # added by devel/scanprov<br/>-PERL_MAGIC_overload # added by devel/scanprov<br/>-PERL_MAGIC_overload_elem # added by devel/scanprov<br/>-PL_bufend # added by devel/scanprov<br/>-PL_bufptr # added by devel/scanprov<br/>-PL_copline # added by devel/scanprov<br/>-PL_error_count # added by devel/scanprov<br/>-PL_expect # added by devel/scanprov<br/>-PL_in_my # added by devel/scanprov<br/>-PL_in_my_stash # added by devel/scanprov<br/>-PL_lex_state # added by devel/scanprov<br/>-PL_lex_stuff # added by devel/scanprov<br/>-PL_linestr # added by devel/scanprov<br/>-PL_rsfp # added by devel/scanprov<br/>-PL_rsfp_filters # added by devel/scanprov<br/>-PL_tokenbuf # added by devel/scanprov<br/>-WARN_ASSERTIONS # added by devel/scanprov<br/>-aTHXR # added by devel/scanprov<br/>-aTHXR_ # added by devel/scanprov<br/>-dTHXR # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021009 b/cpan/Devel-PPPort/parts/base/5021009<br/>new file mode 100644<br/>index 0000000..7397722<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5021009<br/>@@ -0,0 +1 @@<br/>+5.021009<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021010 b/cpan/Devel-PPPort/parts/base/5021010<br/>new file mode 100644<br/>index 0000000..821a8fb<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5021010<br/>@@ -0,0 +1,2 @@<br/>+5.021010<br/>+DECLARATION_FOR_LC_NUMERIC_MANIPULATION # E<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021011 b/cpan/Devel-PPPort/parts/base/5021011<br/>new file mode 100644<br/>index 0000000..6d0f3ba<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5021011<br/>@@ -0,0 +1,4 @@<br/>+5.021011<br/>+OpLASTSIB_set # U<br/>+OpMAYBESIB_set # U<br/>+OpMORESIB_set # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5022000 b/cpan/Devel-PPPort/parts/base/5022000<br/>new file mode 100644<br/>index 0000000..aca319e<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5022000<br/>@@ -0,0 +1,2 @@<br/>+5.022000<br/>+UVCHR_SKIP # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5022001 b/cpan/Devel-PPPort/parts/base/5022001<br/>new file mode 100644<br/>index 0000000..28befba<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5022001<br/>@@ -0,0 +1 @@<br/>+5.022001<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023000 b/cpan/Devel-PPPort/parts/base/5023000<br/>new file mode 100644<br/>index 0000000..e461a32<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023000<br/>@@ -0,0 +1 @@<br/>+5.023000<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023001 b/cpan/Devel-PPPort/parts/base/5023001<br/>new file mode 100644<br/>index 0000000..ea44212<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023001<br/>@@ -0,0 +1 @@<br/>+5.023001<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023002 b/cpan/Devel-PPPort/parts/base/5023002<br/>new file mode 100644<br/>index 0000000..2060466<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023002<br/>@@ -0,0 +1 @@<br/>+5.023002<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023003 b/cpan/Devel-PPPort/parts/base/5023003<br/>new file mode 100644<br/>index 0000000..4b19a24<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023003<br/>@@ -0,0 +1 @@<br/>+5.023003<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023004 b/cpan/Devel-PPPort/parts/base/5023004<br/>new file mode 100644<br/>index 0000000..ce60a67<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023004<br/>@@ -0,0 +1 @@<br/>+5.023004<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023005 b/cpan/Devel-PPPort/parts/base/5023005<br/>new file mode 100644<br/>index 0000000..1b8818c<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023005<br/>@@ -0,0 +1 @@<br/>+5.023005<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023006 b/cpan/Devel-PPPort/parts/base/5023006<br/>new file mode 100644<br/>index 0000000..f6c5994<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023006<br/>@@ -0,0 +1 @@<br/>+5.023006<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023007 b/cpan/Devel-PPPort/parts/base/5023007<br/>new file mode 100644<br/>index 0000000..fb7c553<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023007<br/>@@ -0,0 +1 @@<br/>+5.023007<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023008 b/cpan/Devel-PPPort/parts/base/5023008<br/>new file mode 100644<br/>index 0000000..ed2ef6d<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023008<br/>@@ -0,0 +1,22 @@<br/>+5.023008<br/>+clear_defarray # U<br/>+cx_popblock # U<br/>+cx_popeval # U<br/>+cx_popformat # U<br/>+cx_popgiven # U<br/>+cx_poploop # U<br/>+cx_popsub # U<br/>+cx_popsub_args # U<br/>+cx_popsub_common # U<br/>+cx_popwhen # U<br/>+cx_pushblock # U<br/>+cx_pusheval # U<br/>+cx_pushformat # U<br/>+cx_pushgiven # U<br/>+cx_pushloop_for # U<br/>+cx_pushloop_plain # U<br/>+cx_pushsub # U<br/>+cx_pushwhen # U<br/>+cx_topblock # U<br/>+leave_adjust_stacks # U<br/>+savetmps # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5023009 b/cpan/Devel-PPPort/parts/base/5023009<br/>new file mode 100644<br/>index 0000000..336b09a<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/base/5023009<br/>@@ -0,0 +1,5 @@<br/>+5.023009<br/>+toFOLD_uvchr # U<br/>+toLOWER_uvchr # U<br/>+toTITLE_uvchr # U<br/>+toUPPER_uvchr # U<br/>diff --git a/cpan/Devel-PPPort/parts/base/5021008 b/cpan/Devel-PPPort/parts/base/5024000<br/>similarity index 95%<br/>copy from cpan/Devel-PPPort/parts/base/5021008<br/>copy to cpan/Devel-PPPort/parts/base/5024000<br/>index 7a8f642..32870f9 100644<br/>--- a/cpan/Devel-PPPort/parts/base/5021008<br/>+++ b/cpan/Devel-PPPort/parts/base/5024000<br/>@@ -1,4 +1,4 @@<br/>-5.021008<br/>+5.024000<br/> BhkDISABLE # E<br/> BhkENABLE # E<br/> BhkENTRY_set # E<br/>@@ -22,6 +22,9 @@ PadnamelistARRAY # E<br/> PadnamelistMAX # E<br/> PadnamelistREFCNT # E<br/> PadnamelistREFCNT_dec # E<br/>+RESTORE_LC_NUMERIC # E<br/>+STORE_LC_NUMERIC_FORCE_TO_UNDERLYING # E<br/>+STORE_LC_NUMERIC_SET_TO_NEEDED # E<br/> XS_APIVERSION_BOOTCHECK # E<br/> XS_EXTERNAL # E<br/> XS_INTERNAL # E<br/>@@ -39,7 +42,6 @@ reentrant_init # U<br/> reentrant_retry # U<br/> reentrant_size # U<br/> ref # U (Perl_ref)<br/>-sv_get_backrefs # U<br/> sv_magic_portable # U<br/> sv_setref_pvs # A<br/> PERL_BCDVERSION # added by devel/scanprov<br/>diff --git a/cpan/Devel-PPPort/parts/embed.fnc b/cpan/Devel-PPPort/parts/embed.fnc<br/>index 746d0ca..a64ffba 100644<br/>--- a/cpan/Devel-PPPort/parts/embed.fnc<br/>+++ b/cpan/Devel-PPPort/parts/embed.fnc<br/>@@ -71,7 +71,8 @@<br/> :<br/> : M May change:<br/> :<br/>-: any doc entry is marked that function may change<br/>+: any doc entry is marked that function may change. Also used to<br/>+: suppress making a doc entry if it would just be a placeholder.<br/> :<br/> : m Implemented as a macro:<br/> :<br/>@@ -230,7 +231,9 @@ Apd |void |av_push |NN AV *av|NN SV *val<br/> EXp |void |av_reify |NN AV *av<br/> ApdR |SV* |av_shift |NN AV *av<br/> Apd |SV** |av_store |NN AV *av|SSize_t key|NULLOK SV *val<br/>+#ifndef PERL_NO_INLINE_FUNCTIONS<br/> AidR |SSize_t|av_top_index |NN AV *av<br/>+#endif<br/> AmpdR |SSize_t|av_tindex |NN AV *av<br/> Apd |void |av_undef |NN AV *av<br/> ApdoxM |SV** |av_create_and_unshift_one|NN AV **const avp|NN SV *const val<br/>@@ -244,7 +247,7 @@ s |MAGIC* |get_aux_mg |NN AV *av<br/> pR |OP* |bind_match |I32 type|NN OP *left|NN OP *right<br/> : Used in perly.y<br/> ApdR |OP* |block_end |I32 floor|NULLOK OP* seq<br/>-ApR |I32 |block_gimme<br/>+ApR |U8 |block_gimme<br/> : Used in perly.y<br/> ApdR |int |block_start |int full<br/> Aodp |void |blockhook_register |NN BHK *hk<br/>@@ -269,7 +272,7 @@ p |const COP*|closest_cop |NN const COP *cop|NULLOK const OP *o \<br/> : Used in perly.y<br/> ApdR |OP* |op_convert_list |I32 optype|I32 flags|NULLOK OP* o<br/> : Used in op.c and perl.c<br/>-pM |PERL_CONTEXT* |create_eval_scope|U32 flags<br/>+pM |void |create_eval_scope|NULLOK OP *retop|U32 flags<br/> Aprd |void |croak_sv |NN SV *baseex<br/> : croak()&#39;s first parm can be NULL. Otherwise, mod_perl breaks.<br/> Afprd |void |croak |NULLOK const char* pat|...<br/>@@ -317,7 +320,7 @@ pRn |SV* |cv_const_sv_or_av|NULLOK const CV *const cv<br/> Apd |SV * |cv_name |NN CV *cv|NULLOK SV *sv|U32 flags<br/> Apd |void |cv_undef |NN CV* cv<br/> p |void |cv_undef_flags |NN CV* cv|U32 flags<br/>-p |void |cv_forget_slab |NN CV *cv<br/>+p |void |cv_forget_slab |NULLOK CV *cv<br/> Ap |void |cx_dump |NN PERL_CONTEXT* cx<br/> Ap |SV* |filter_add |NULLOK filter_t funcp|NULLOK SV* datasv<br/> Ap |void |filter_del |NN filter_t funcp<br/>@@ -334,7 +337,7 @@ ApR |I32 |cxinc<br/> Afp |void |deb |NN const char* pat|...<br/> Ap |void |vdeb |NN const char* pat|NULLOK va_list* args<br/> Ap |void |debprofdump<br/>-EXp |SV* |multideref_stringify |NN const OP* o|NN CV *cv<br/>+EXp |SV* |multideref_stringify |NN const OP* o|NULLOK CV *cv<br/> Ap |I32 |debop |NN const OP* o<br/> Ap |I32 |debstack<br/> Ap |I32 |debstackptrs<br/>@@ -349,9 +352,9 @@ Afrpd |OP* |die |NULLOK const char* pat|...<br/> pr |void |die_unwind |NN SV* msv<br/> Ap |void |dounwind |I32 cxix<br/> : FIXME<br/>-pmb |bool |do_aexec |NULLOK SV* really|NN SV** mark|NN SV** sp<br/>+pmb |bool|do_aexec |NULLOK SV* really|NN SV** mark|NN SV** sp<br/> : Used in pp_sys.c<br/>-p |bool |do_aexec5 |NULLOK SV* really|NN SV** mark|NN SV** sp|int fd|int do_report<br/>+p |bool|do_aexec5 |NULLOK SV* really|NN SV** mark|NN SV** sp|int fd|int do_report<br/> Ap |int |do_binmode |NN PerlIO *fp|int iotype|int mode<br/> : Used in pp.c<br/> Ap |bool |do_close |NULLOK GV* gv|bool not_implicit<br/>@@ -359,9 +362,9 @@ Ap |bool |do_close |NULLOK GV* gv|bool not_implicit<br/> p |bool |do_eof |NN GV* gv<br/> <br/> #ifdef PERL_DEFAULT_DO_EXEC3_IMPLEMENTATION<br/>-pm |bool |do_exec |NN const char* cmd<br/>+pm |bool|do_exec |NN const char* cmd<br/> #else<br/>-p |bool |do_exec |NN const char* cmd<br/>+p |bool|do_exec |NN const char* cmd<br/> #endif<br/> <br/> #if defined(WIN32) || defined(__SYMBIAN32__) || defined(VMS)<br/>@@ -370,7 +373,7 @@ Ap |int |do_spawn |NN char* cmd<br/> Ap |int |do_spawn_nowait|NN char* cmd<br/> #endif<br/> #if !defined(WIN32)<br/>-p |bool |do_exec3 |NN const char *incmd|int fd|int do_report<br/>+p |bool|do_exec3 |NN const char *incmd|int fd|int do_report<br/> #endif<br/> p |void |do_execfree<br/> #if defined(PERL_IN_DOIO_C)<br/>@@ -440,7 +443,7 @@ p |void |do_vecset |NN SV* sv<br/> p |void |do_vop |I32 optype|NN SV* sv|NN SV* left|NN SV* right<br/> : Used in perly.y<br/> p |OP* |dofile |NN OP* term|I32 force_builtin<br/>-ApR |I32 |dowantarray<br/>+ApR |U8 |dowantarray<br/> Ap |void |dump_all<br/> p |void |dump_all_perl |bool justperl<br/> Ap |void |dump_eval<br/>@@ -653,7 +656,9 @@ pR |OP* |invert |NULLOK OP* cmd<br/> ApR |I32 |is_lvalue_sub<br/> : Used in cop.h<br/> XopR |I32 |was_lvalue_sub<br/>+#ifndef PERL_NO_INLINE_FUNCTIONS<br/> AiMRn |STRLEN |_is_utf8_char_slow|NN const U8 *s|NN const U8 *e<br/>+#endif<br/> ADMpPR |U32 |to_uni_upper_lc|U32 c<br/> ADMpPR |U32 |to_uni_title_lc|U32 c<br/> ADMpPR |U32 |to_uni_lower_lc|U32 c<br/>@@ -781,13 +786,14 @@ Apd |void |op_null |NN OP* o<br/> EXp |void |op_clear |NN OP* o<br/> Ap |void |op_refcnt_lock<br/> Ap |void |op_refcnt_unlock<br/>-Apdn |OP* |op_sibling_splice|NN OP *parent|NULLOK OP *start \<br/>+Apdn |OP* |op_sibling_splice|NULLOK OP *parent|NULLOK OP *start \<br/> |int del_count|NULLOK OP* insert<br/>+#ifdef PERL_OP_PARENT<br/> Apdn |OP* |op_parent|NN OP *o<br/>+#endif<br/> #if defined(PERL_IN_OP_C)<br/> s |OP* |listkids |NULLOK OP* o<br/> #endif<br/>-: Used in S_doeval in pp_ctl.c<br/> p |OP* |list |NULLOK OP* o<br/> Apd |void |load_module|U32 flags|NN SV* name|NULLOK SV* ver|...<br/> Ap |void |vload_module|U32 flags|NN SV* name|NULLOK SV* ver|NULLOK va_list* args<br/>@@ -795,22 +801,23 @@ Ap |void |vload_module|U32 flags|NN SV* name|NULLOK SV* ver|NULLOK va_list* args<br/> p |OP* |localize |NN OP *o|I32 lex<br/> ApdR |I32 |looks_like_number|NN SV *const sv<br/> Apd |UV |grok_bin |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result<br/>-#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C)<br/>-EMsR |char |grok_bslash_c |const char source|const bool output_warning<br/>-EMsR |bool |grok_bslash_o |NN char** s|NN UV* uv \<br/>+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_DQUOTE_C)<br/>+EMpRX |bool |grok_bslash_x |NN char** s|NN UV* uv \<br/> |NN const char** error_msg \<br/> |const bool output_warning \<br/> |const bool strict \<br/> |const bool silence_non_portable \<br/> |const bool utf8<br/>-EMiR |bool |grok_bslash_x |NN char** s|NN UV* uv \<br/>+EMpRX |char |grok_bslash_c |const char source|const bool output_warning<br/>+EMpRX |bool |grok_bslash_o |NN char** s|NN UV* uv \<br/> |NN const char** error_msg \<br/> |const bool output_warning \<br/> |const bool strict \<br/> |const bool silence_non_portable \<br/> |const bool utf8<br/>-EMsPR |char*|form_short_octal_warning|NN const char * const s \<br/>+EMiR |char*|form_short_octal_warning|NN const char * const s \<br/> |const STRLEN len<br/>+EiPRn |I32 |regcurly |NN const char *s<br/> #endif<br/> Apd |UV |grok_hex |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result<br/> Apd |int |grok_infnan |NN const char** sp|NN const char *send<br/>@@ -924,11 +931,11 @@ s |void |move_proto_attr|NN OP **proto|NN OP **attrs|NN const GV *name<br/> p |int |mode_from_discipline|NULLOK const char* s|STRLEN len<br/> Ap |const char* |moreswitches |NN const char* s<br/> Ap |NV |my_atof |NN const char *s<br/>-#if (!defined(HAS_MEMCPY) &amp;&amp; !defined(HAS_BCOPY)) || (!defined(HAS_MEMMOVE) &amp;&amp; !defined(HAS_SAFE_MEMCPY) &amp;&amp; !defined(HAS_SAFE_BCOPY))<br/>-Anp |char* |my_bcopy |NN const char* from|NN char* to|I32 len<br/>+#if !defined(HAS_MEMCPY) || (!defined(HAS_MEMMOVE) &amp;&amp; !defined(HAS_SAFE_MEMCPY))<br/>+Anp |void* |my_bcopy |NN const void* vfrom|NN void* vto|size_t len<br/> #endif<br/> #if !defined(HAS_BZERO) &amp;&amp; !defined(HAS_MEMSET)<br/>-Anp |char* |my_bzero |NN char* loc|I32 len<br/>+Anp |void* |my_bzero |NN void* vloc|size_t len<br/> #endif<br/> Apr |void |my_exit |U32 status<br/> Apr |void |my_failure_exit<br/>@@ -939,10 +946,10 @@ Anp |void |atfork_unlock<br/> Apmb |I32 |my_lstat<br/> pX |I32 |my_lstat_flags |NULLOK const U32 flags<br/> #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP)<br/>-AnpP |I32 |my_memcmp |NN const char* s1|NN const char* s2|I32 len<br/>+AnpP |int |my_memcmp |NN const void* vs1|NN const void* vs2|size_t len<br/> #endif<br/> #if !defined(HAS_MEMSET)<br/>-Anp |void* |my_memset |NN char* loc|I32 ch|I32 len<br/>+Anp |void* |my_memset |NN void* vloc|int ch|size_t len<br/> #endif<br/> #if !defined(PERL_IMPLICIT_SYS)<br/> Ap |I32 |my_pclose |NULLOK PerlIO* ptr<br/>@@ -960,9 +967,6 @@ ADMnoPR |UV |ASCII_TO_NEED |const UV enc|const UV ch<br/> Apa |OP* |newANONLIST |NULLOK OP* o<br/> Apa |OP* |newANONHASH |NULLOK OP* o<br/> Ap |OP* |newANONSUB |I32 floor|NULLOK OP* proto|NULLOK OP* block<br/>-#if defined(PERL_IN_OP_C)<br/>-i |bool |aassign_common_vars |NULLOK OP* o<br/>-#endif<br/> Apda |OP* |newASSIGNOP |I32 flags|NULLOK OP* left|I32 optype|NULLOK OP* right<br/> Apda |OP* |newCONDOP |I32 flags|NN OP* first|NULLOK OP* trueop|NULLOK OP* falseop<br/> Apd |CV* |newCONSTSUB |NULLOK HV* stash|NULLOK const char* name|NULLOK SV* sv<br/>@@ -1161,12 +1165,12 @@ Amb |OP* |ref |NULLOK OP* o|I32 type<br/> s |OP* |refkids |NULLOK OP* o|I32 type<br/> #endif<br/> Ap |void |regdump |NN const regexp* r<br/>-Ap |SV* |regclass_swash |NULLOK const regexp *prog \<br/>+ApM |SV* |regclass_swash |NULLOK const regexp *prog \<br/> |NN const struct regnode *node|bool doinit \<br/> |NULLOK SV **listsvp|NULLOK SV **altsvp<br/> #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_PERL_C) || defined(PERL_IN_UTF8_C)<br/> AMpR |SV* |_new_invlist_C_array|NN const UV* const list<br/>-: Not used currently: EXMs |bool |_invlistEQ |NN SV* const a|NN SV* const b|const bool complement_b<br/>+EXMp |bool |_invlistEQ |NN SV* const a|NN SV* const b|const bool complement_b<br/> #endif<br/> Ap |I32 |pregexec |NN REGEXP * const prog|NN char* stringarg \<br/> |NN char* strend|NN char* strbeg \<br/>@@ -1196,9 +1200,6 @@ Ap |char* |re_intuit_start|NN REGEXP * const rx \<br/> |const U32 flags \<br/> |NULLOK re_scream_pos_data *data<br/> Ap |SV* |re_intuit_string|NN REGEXP *const r<br/>-#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C)<br/>-EiPRn |I32 |regcurly |NN const char *s<br/>-#endif<br/> Ap |I32 |regexec_flags |NN REGEXP *const rx|NN char *stringarg \<br/> |NN char *strend|NN char *strbeg \<br/> |SSize_t minend|NN SV *sv \<br/>@@ -1258,7 +1259,6 @@ Ap |void |savestack_grow_cnt |I32 need<br/> Amp |void |save_aelem |NN AV* av|SSize_t idx|NN SV **sptr<br/> Ap |void |save_aelem_flags|NN AV* av|SSize_t idx|NN SV **sptr \<br/> |const U32 flags<br/>-p |void |save_aliased_sv|NN GV* gv<br/> Ap |I32 |save_alloc |I32 size|I32 pad<br/> Ap |void |save_aptr |NN AV** aptr<br/> Ap |AV* |save_ary |NN GV* gv<br/>@@ -1276,7 +1276,7 @@ Apmb |void |save_freepv |NULLOK char* pv<br/> Ap |void |save_generic_svref|NN SV** sptr<br/> Ap |void |save_generic_pvref|NN char** str<br/> Ap |void |save_shared_pvref|NN char** str<br/>-Ap |void |save_gp |NN GV* gv|I32 empty<br/>+Adp |void |save_gp |NN GV* gv|I32 empty<br/> Ap |HV* |save_hash |NN GV* gv<br/> Ap |void |save_hints<br/> Amp |void |save_helem |NN HV *hv|NN SV *key|NN SV **sptr<br/>@@ -1302,6 +1302,7 @@ Ap |void |save_padsv_and_mortalize|PADOFFSET off<br/> Ap |void |save_sptr |NN SV** sptr<br/> Xp |void |save_strlen |NN STRLEN* ptr<br/> Ap |SV* |save_svref |NN SV** sptr<br/>+AMpo |void |savetmps<br/> Ap |void |save_pushptr |NULLOK void *const ptr|const int type<br/> Ap |void |save_pushi32ptr|const I32 i|NULLOK void *const ptr|const int type<br/> : Used by SAVESWITCHSTACK() in pp.c<br/>@@ -1375,7 +1376,7 @@ Apd |I32 |sv_true |NULLOK SV *const sv<br/> sd |void |sv_add_arena |NN char *const ptr|const U32 size \<br/> |const U32 flags<br/> #endif<br/>-Apdn |int |sv_backoff |NN SV *const sv<br/>+Apdn |void |sv_backoff |NN SV *const sv<br/> Apd |SV* |sv_bless |NN SV *const sv|NN HV *const stash<br/> #if defined(PERL_DEBUG_READONLY_COW)<br/> p |void |sv_buf_to_ro |NN SV *sv<br/>@@ -1447,7 +1448,9 @@ Apd |void |sv_magic |NN SV *const sv|NULLOK SV *const obj|const int how \<br/> Apd |MAGIC *|sv_magicext |NN SV *const sv|NULLOK SV *const obj|const int how \<br/> |NULLOK const MGVTBL *const vtbl|NULLOK const char *const name \<br/> |const I32 namlen<br/>+#ifndef PERL_NO_INLINE_FUNCTIONS<br/> Ein |bool |sv_only_taint_gmagic|NN SV *sv<br/>+#endif<br/> : exported for re.pm<br/> EXp |MAGIC *|sv_magicext_mglob|NN SV *sv<br/> ApdbamR |SV* |sv_mortalcopy |NULLOK SV *const oldsv<br/>@@ -1468,7 +1471,7 @@ Apd |char* |sv_recode_to_utf8 |NN SV* sv|NN SV *encoding<br/> Apd |bool |sv_cat_decode |NN SV* dsv|NN SV *encoding|NN SV *ssv|NN int *offset \<br/> |NN char* tstr|int tlen<br/> ApdR |const char* |sv_reftype |NN const SV *const sv|const int ob<br/>-pd |SV* |sv_ref |NULLOK SV *dst|NN const SV *const sv|const int ob<br/>+Apd |SV* |sv_ref |NULLOK SV *dst|NN const SV *const sv|const int ob<br/> Apd |void |sv_replace |NN SV *const sv|NN SV *const nsv<br/> Apd |void |sv_report_used<br/> Apd |void |sv_reset |NN const char* s|NULLOK HV *const stash<br/>@@ -1512,8 +1515,8 @@ Apd |void |sv_vsetpvfn |NN SV *const sv|NN const char *const pat|const STRLEN pa<br/> |NULLOK va_list *const args|NULLOK SV **const svargs \<br/> |const I32 svmax|NULLOK bool *const maybe_tainted<br/> ApR |NV |str_to_version |NN SV *sv<br/>-ApR |SV* |swash_init |NN const char* pkg|NN const char* name|NN SV* listsv|I32 minbits|I32 none<br/>-Ap |UV |swash_fetch |NN SV *swash|NN const U8 *ptr|bool do_utf8<br/>+ApRM |SV* |swash_init |NN const char* pkg|NN const char* name|NN SV* listsv|I32 minbits|I32 none<br/>+ApM |UV |swash_fetch |NN SV *swash|NN const U8 *ptr|bool do_utf8<br/> #ifdef PERL_IN_REGCOMP_C<br/> EiMR |SV* |add_cp_to_invlist |NULLOK SV* invlist|const UV cp<br/> EsM |void |_append_range_to_invlist |NN SV* const invlist|const UV start|const UV end<br/>@@ -1521,12 +1524,14 @@ EiMRn |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0<br/> EsM |void |invlist_extend |NN SV* const invlist|const UV len<br/> EiMRn |UV |invlist_max |NN SV* const invlist<br/> EiM |void |invlist_set_len|NN SV* const invlist|const UV len|const bool offset<br/>+EiMRn |bool |invlist_is_iterating|NN SV* const invlist<br/> #ifndef PERL_EXT_RE_BUILD<br/>+EsM |void |invlist_replace_list_destroys_src|NN SV *dest|NN SV *src<br/> EiMRn |IV* |get_invlist_previous_index_addr|NN SV* invlist<br/>-EiMRn |bool |invlist_is_iterating|NN SV* const invlist<br/> EiMn |void |invlist_set_previous_index|NN SV* const invlist|const IV index<br/> EiMRn |IV |invlist_previous_index|NN SV* const invlist<br/>-EiMn |void |invlist_trim |NN SV* const invlist<br/>+EiMn |void |invlist_trim |NN SV* invlist<br/>+EiM |void |invlist_clear |NN SV* invlist<br/> #endif<br/> EiMR |SV* |invlist_clone |NN SV* const invlist<br/> EiMRn |STRLEN*|get_invlist_iter_addr |NN SV* invlist<br/>@@ -1536,6 +1541,8 @@ EiMn |void |invlist_iterfinish|NN SV* invlist<br/> EiMRn |UV |invlist_highest|NN SV* const invlist<br/> EMRs |SV* |_make_exactf_invlist |NN RExC_state_t *pRExC_state \<br/> |NN regnode *node<br/>+EsMR |SV* |invlist_contents|NN SV* const invlist \<br/>+ |const bool traditional_style<br/> #endif<br/> #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_UTF8_C)<br/> EXmM |void |_invlist_intersection |NN SV* const a|NN SV* const b|NN SV** i<br/>@@ -1561,7 +1568,6 @@ EXp |SV* |_core_swash_init|NN const char* pkg|NN const char* name \<br/> #endif<br/> #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C)<br/> EiMRn |UV* |invlist_array |NN SV* const invlist<br/>-EXMpR |SV* |_invlist_contents|NN SV* const invlist<br/> EiMRn |bool* |get_invlist_offset_addr|NN SV* invlist<br/> EiMRn |UV |_invlist_len |NN SV* const invlist<br/> EMiRn |bool |_invlist_contains_cp|NN SV* const invlist|const UV cp<br/>@@ -1576,7 +1582,7 @@ ApM |SV* |_get_regclass_nonbitmap_data \<br/> |bool doinit \<br/> |NULLOK SV **listsvp \<br/> |NULLOK SV **lonly_utf8_locale \<br/>- |NULLOK SV *exclude_list<br/>+ |NULLOK SV **output_invlist<br/> EXp |void|_load_PL_utf8_foldclosures|<br/> #endif<br/> #if defined(PERL_IN_REGCOMP_C) || defined (PERL_IN_DUMP_C)<br/>@@ -1586,8 +1592,21 @@ EXMp |void |_invlist_dump |NN PerlIO *file|I32 level \<br/> #endif<br/> Ap |void |taint_env<br/> Ap |void |taint_proper |NULLOK const char* f|NN const char *const s<br/>-Apd |UV |to_utf8_case |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp \<br/>- |NN SV **swashp|NN const char *normal|NULLOK const char *special<br/>+ApdD |UV |to_utf8_case |NN const U8 *p \<br/>+ |NN U8* ustrp \<br/>+ |NULLOK STRLEN *lenp \<br/>+ |NN SV **swashp \<br/>+ |NN const char *normal| \<br/>+ NULLOK const char *special<br/>+#if defined(PERL_IN_UTF8_C)<br/>+s |UV |_to_utf8_case |const UV uv1 \<br/>+ |NN const U8 *p \<br/>+ |NN U8* ustrp \<br/>+ |NULLOK STRLEN *lenp \<br/>+ |NN SV **swashp \<br/>+ |NN const char *normal \<br/>+ |NULLOK const char *special<br/>+#endif<br/> Abmd |UV |to_utf8_lower |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp<br/> AMp |UV |_to_utf8_lower_flags |NN const U8 *p|NN U8* ustrp \<br/> |NULLOK STRLEN *lenp|bool flags<br/>@@ -1623,7 +1642,7 @@ Ap |U8* |utf16_to_utf8 |NN U8* p|NN U8 *d|I32 bytelen|NN I32 *newlen<br/> Ap |U8* |utf16_to_utf8_reversed|NN U8* p|NN U8 *d|I32 bytelen|NN I32 *newlen<br/> AdpPR |STRLEN |utf8_length |NN const U8* s|NN const U8 *e<br/> ApdPR |IV |utf8_distance |NN const U8 *a|NN const U8 *b<br/>-ApdPRn |U8* |utf8_hop |NN const U8 *s|I32 off<br/>+ApdPRn |U8* |utf8_hop |NN const U8 *s|SSize_t off<br/> ApMd |U8* |utf8_to_bytes |NN U8 *s|NN STRLEN *len<br/> Apd |int |bytes_cmp_utf8 |NN const U8 *b|STRLEN blen|NN const U8 *u \<br/> |STRLEN ulen<br/>@@ -1691,8 +1710,10 @@ Am |I32 |whichsig |NN const char* sig<br/> Ap |I32 |whichsig_sv |NN SV* sigsv<br/> Ap |I32 |whichsig_pv |NN const char* sig<br/> Ap |I32 |whichsig_pvn |NN const char* sig|STRLEN len<br/>+#ifndef PERL_NO_INLINE_FUNCTIONS<br/> : used to check for NULs in pathnames and other names<br/> AiR |bool |is_safe_syscall|NN const char *pv|STRLEN len|NN const char *what|NN const char *op_name<br/>+#endif<br/> #ifdef PERL_CORE<br/> inR |bool |should_warn_nl|NN const char *pv<br/> #endif<br/>@@ -2042,20 +2063,18 @@ sR |OP* |dofindlabel |NN OP *o|NN const char *label|STRLEN len \<br/> s |MAGIC *|doparseform |NN SV *sv<br/> snR |bool |num_overflow |NV value|I32 fldsize|I32 frcsize<br/> sR |I32 |dopoptoeval |I32 startingblock<br/>-sR |I32 |dopoptogiven |I32 startingblock<br/>+sR |I32 |dopoptogivenfor|I32 startingblock<br/> sR |I32 |dopoptolabel |NN const char *label|STRLEN len|U32 flags<br/> sR |I32 |dopoptoloop |I32 startingblock<br/> sR |I32 |dopoptosub_at |NN const PERL_CONTEXT* cxstk|I32 startingblock<br/> sR |I32 |dopoptowhen |I32 startingblock<br/> s |void |save_lines |NULLOK AV *array|NN SV *sv<br/>-s |bool |doeval |int gimme \<br/>+s |bool |doeval_compile |U8 gimme \<br/> |NULLOK CV* outside|U32 seq|NULLOK HV* hh<br/> sR |PerlIO *|check_type_and_open|NN SV *name<br/> #ifndef PERL_DISABLE_PMC<br/> sR |PerlIO *|doopen_pm |NN SV *name<br/> #endif<br/>-s |SV ** |leave_common |NN SV **newsp|NN SV **sp|NN SV **mark|I32 gimme \<br/>- |U32 flags|bool lvalue<br/> iRn |bool |path_is_searchable|NN const char *name<br/> sR |I32 |run_user_filter|int idx|NN SV *buf_sv|int maxlen<br/> sR |PMOP* |make_matcher |NN REGEXP* re<br/>@@ -2076,9 +2095,9 @@ s |I32 |sv_i_ncmp |NN SV *const a|NN SV *const b<br/> s |I32 |amagic_ncmp |NN SV *const a|NN SV *const b<br/> s |I32 |amagic_i_ncmp |NN SV *const a|NN SV *const b<br/> s |I32 |amagic_cmp |NN SV *const str1|NN SV *const str2<br/>-# ifdef USE_LOCALE_COLLATE<br/>+# ifdef USE_LOCALE_COLLATE<br/> s |I32 |amagic_cmp_locale|NN SV *const str1|NN SV *const str2<br/>-#endif<br/>+# endif<br/> s |I32 |sortcv |NN SV *const a|NN SV *const b<br/> s |I32 |sortcv_xsub |NN SV *const a|NN SV *const b<br/> s |I32 |sortcv_stacked |NN SV *const a|NN SV *const b<br/>@@ -2099,6 +2118,7 @@ p |OP * |tied_method|NN SV *methname|NN SV **sp \<br/> #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C)<br/> Ep |void |regprop |NULLOK const regexp *prog|NN SV* sv|NN const regnode* o|NULLOK const regmatch_info *reginfo \<br/> |NULLOK const RExC_state_t *pRExC_state<br/>+Ep |int |re_printf |NN const char *fmt|...<br/> #endif<br/> #if defined(PERL_IN_REGCOMP_C)<br/> Es |regnode*|reg |NN RExC_state_t *pRExC_state \<br/>@@ -2124,6 +2144,10 @@ Es |void |set_ANYOF_arg |NN RExC_state_t* const pRExC_state \<br/> |NULLOK SV* const only_utf8_locale_list \<br/> |NULLOK SV* const swash \<br/> |const bool has_user_defined_property<br/>+Es |void |output_or_return_posix_warnings \<br/>+ |NN RExC_state_t *pRExC_state \<br/>+ |NN AV* posix_warnings \<br/>+ |NULLOK AV** return_posix_warnings<br/> Es |AV* |add_multi_match|NULLOK AV* multi_char_matches \<br/> |NN SV* multi_string \<br/> |const STRLEN cp_count<br/>@@ -2132,40 +2156,52 @@ Es |regnode*|regclass |NN RExC_state_t *pRExC_state \<br/> |bool allow_multi_fold \<br/> |const bool silence_non_portable \<br/> |const bool strict \<br/>- |NULLOK SV** ret_invlist<br/>+ |bool optimizable \<br/>+ |NULLOK SV** ret_invlist \<br/>+ |NULLOK AV** return_posix_warnings<br/> Es |void|add_above_Latin1_folds|NN RExC_state_t *pRExC_state|const U8 cp \<br/> |NN SV** invlist<br/>-Esn |bool|could_it_be_a_POSIX_class|NN RExC_state_t *pRExC_state<br/>+Ei |regnode*|handle_named_backref|NN RExC_state_t *pRExC_state \<br/>+ |NN I32 *flagp \<br/>+ |NN char * parse_start \<br/>+ |char ch<br/>+EsnP |unsigned int|regex_set_precedence|const U8 my_operator<br/> Es |regnode*|handle_regex_sets|NN RExC_state_t *pRExC_state \<br/> |NULLOK SV ** return_invlist \<br/> |NN I32 *flagp|U32 depth \<br/> |NN char * const oregcomp_parse<br/> Es |void|parse_lparen_question_flags|NN RExC_state_t *pRExC_state<br/> Es |regnode*|reg_node |NN RExC_state_t *pRExC_state|U8 op<br/>-Es |UV |reg_recode |const char value|NN SV **encp<br/>+Es |UV |reg_recode |const U8 value|NN SV **encp<br/> Es |regnode*|regpiece |NN RExC_state_t *pRExC_state \<br/> |NN I32 *flagp|U32 depth<br/>-Es |STRLEN |grok_bslash_N |NN RExC_state_t *pRExC_state \<br/>- |NULLOK regnode** nodep|NULLOK UV *valuep \<br/>- |NN I32 *flagp|U32 depth \<br/>- |NULLOK SV** substitute_parse<br/>+Es |bool |grok_bslash_N |NN RExC_state_t *pRExC_state \<br/>+ |NULLOK regnode** nodep \<br/>+ |NULLOK UV *code_point_p \<br/>+ |NULLOK int* cp_count \<br/>+ |NN I32 *flagp \<br/>+ |const bool strict \<br/>+ |const U32 depth<br/> Es |void |reginsert |NN RExC_state_t *pRExC_state \<br/> |U8 op|NN regnode *opnd|U32 depth<br/>-Es |void |regtail |NN RExC_state_t *pRExC_state \<br/>- |NN regnode *p|NN const regnode *val|U32 depth<br/>+Es |void |regtail |NN RExC_state_t * pRExC_state \<br/>+ |NN const regnode * const p \<br/>+ |NN const regnode * const val \<br/>+ |const U32 depth<br/> Es |SV * |reg_scan_name |NN RExC_state_t *pRExC_state \<br/> |U32 flags<br/> Es |U32 |join_exact |NN RExC_state_t *pRExC_state \<br/> |NN regnode *scan|NN UV *min_subtract \<br/> |NN bool *unfolded_multi_char \<br/> |U32 flags|NULLOK regnode *val|U32 depth<br/>-EsRn |char * |regpatws |NN RExC_state_t *pRExC_state \<br/>- |NN char *p|const bool recognize_comment<br/> Ei |void |alloc_maybe_populate_EXACT|NN RExC_state_t *pRExC_state \<br/> |NN regnode *node|NN I32 *flagp|STRLEN len \<br/> |UV code_point|bool downgradable<br/> Ein |U8 |compute_EXACTish|NN RExC_state_t *pRExC_state<br/>-Es |char * |nextchar |NN RExC_state_t *pRExC_state<br/>+Es |void |nextchar |NN RExC_state_t *pRExC_state<br/>+Es |void |skip_to_be_ignored_text|NN RExC_state_t *pRExC_state \<br/>+ |NN char ** p \<br/>+ |const bool force_to_xmod<br/> Ein |char * |reg_skipcomment|NN RExC_state_t *pRExC_state|NN char * p<br/> Es |void |scan_commit |NN const RExC_state_t *pRExC_state \<br/> |NN struct scan_data_t *data \<br/>@@ -2210,8 +2246,12 @@ Es |SSize_t|study_chunk |NN RExC_state_t *pRExC_state \<br/> EsRn |U32 |add_data |NN RExC_state_t* const pRExC_state \<br/> |NN const char* const s|const U32 n<br/> rs |void |re_croak2 |bool utf8|NN const char* pat1|NN const char* pat2|...<br/>-Ei |I32 |regpposixcc |NN RExC_state_t *pRExC_state \<br/>- |I32 value|const bool strict<br/>+Es |int |handle_possible_posix \<br/>+ |NN RExC_state_t *pRExC_state \<br/>+ |NN const char* const s \<br/>+ |NULLOK char ** updated_parse_ptr \<br/>+ |NULLOK AV** posix_warnings \<br/>+ |const bool check_only<br/> Es |I32 |make_trie |NN RExC_state_t *pRExC_state \<br/> |NN regnode *startbranch|NN regnode *first \<br/> |NN regnode *last|NN regnode *tail \<br/>@@ -2219,7 +2259,13 @@ Es |I32 |make_trie |NN RExC_state_t *pRExC_state \<br/> Es |regnode *|construct_ahocorasick_from_trie|NN RExC_state_t *pRExC_state \<br/> |NN regnode *source|U32 depth<br/> EnPs |const char *|cntrl_to_mnemonic|const U8 c<br/>+EnPs |int |edit_distance |NN const UV *src \<br/>+ |NN const UV *tgt \<br/>+ |const STRLEN x \<br/>+ |const STRLEN y \<br/>+ |const SSize_t maxDistance<br/> # ifdef DEBUGGING<br/>+Ep |int |re_indentf |NN const char *fmt|U32 depth|...<br/> Es |void |regdump_intflags|NULLOK const char *lead| const U32 flags<br/> Es |void |regdump_extflags|NULLOK const char *lead| const U32 flags<br/> Es |const regnode*|dumpuntil|NN const regexp *r|NN const regnode *start \<br/>@@ -2228,9 +2274,21 @@ Es |const regnode*|dumpuntil|NN const regexp *r|NN const regnode *start \<br/> |NULLOK const regnode *plast \<br/> |NN SV* sv|I32 indent|U32 depth<br/> Es |void |put_code_point |NN SV* sv|UV c<br/>-Es |bool |put_charclass_bitmap_innards|NN SV* sv \<br/>- |NN char* bitmap \<br/>- |NULLOK SV** bitmap_invlist<br/>+Es |bool |put_charclass_bitmap_innards|NN SV* sv \<br/>+ |NN char* bitmap \<br/>+ |NULLOK SV* nonbitmap_invlist \<br/>+ |NULLOK SV* only_utf8_locale_invlist\<br/>+ |NULLOK const regnode * const node<br/>+Es |SV* |put_charclass_bitmap_innards_common \<br/>+ |NN SV* invlist \<br/>+ |NULLOK SV* posixes \<br/>+ |NULLOK SV* only_utf8 \<br/>+ |NULLOK SV* not_utf8 \<br/>+ |NULLOK SV* only_utf8_locale \<br/>+ |const bool invert<br/>+Es |void |put_charclass_bitmap_innards_invlist \<br/>+ |NN SV *sv \<br/>+ |NN SV* invlist<br/> Es |void |put_range |NN SV* sv|UV start|const UV end \<br/> |const bool allow_literals<br/> Es |void |dump_trie |NN const struct _reg_trie_data *trie\<br/>@@ -2256,7 +2314,7 @@ ERs |I32 |regrepeat |NN regexp *prog|NN char **startposp \<br/> |NN regmatch_info *const reginfo \<br/> |I32 max \<br/> |int depth<br/>-ERs |I32 |regtry |NN regmatch_info *reginfo|NN char **startposp<br/>+ERs |bool |regtry |NN regmatch_info *reginfo|NN char **startposp<br/> ERs |bool |reginclass |NULLOK regexp * const prog \<br/> |NN const regnode * const n \<br/> |NN const U8 * const p \<br/>@@ -2277,44 +2335,59 @@ Es |void |to_utf8_substr |NN regexp * prog<br/> Es |bool |to_byte_substr |NN regexp * prog<br/> ERsn |I32 |reg_check_named_buff_matched |NN const regexp *rex \<br/> |NN const regnode *scan<br/>-EsnR |bool |isGCB |const PL_GCB_enum before|const PL_GCB_enum after<br/>-EsR |bool |isSB |PL_SB_enum before \<br/>- |PL_SB_enum after \<br/>+EinR |bool |isGCB |const GCB_enum before|const GCB_enum after<br/>+EsR |bool |isLB |LB_enum before \<br/>+ |LB_enum after \<br/>+ |NN const U8 * const strbeg \<br/>+ |NN const U8 * const curpos \<br/>+ |NN const U8 * const strend \<br/>+ |const bool utf8_target<br/>+EsR |LB_enum|advance_one_LB |NN U8 ** curpos \<br/>+ |NN const U8 * const strend \<br/>+ |const bool utf8_target<br/>+EsR |LB_enum|backup_one_LB |NN const U8 * const strbeg \<br/>+ |NN U8 ** curpos \<br/>+ |const bool utf8_target<br/>+EsR |bool |isSB |SB_enum before \<br/>+ |SB_enum after \<br/> |NN const U8 * const strbeg \<br/> |NN const U8 * const curpos \<br/> |NN const U8 * const strend \<br/> |const bool utf8_target<br/>-EsR |PL_SB_enum|advance_one_SB|NN U8 ** curpos \<br/>+EsR |SB_enum|advance_one_SB |NN U8 ** curpos \<br/> |NN const U8 * const strend \<br/> |const bool utf8_target<br/>-EsR |PL_SB_enum|backup_one_SB|NN const U8 * const strbeg \<br/>+EsR |SB_enum|backup_one_SB |NN const U8 * const strbeg \<br/> |NN U8 ** curpos \<br/> |const bool utf8_target<br/>-EsR |bool |isWB |PL_WB_enum previous \<br/>- |PL_WB_enum before \<br/>- |PL_WB_enum after \<br/>+EsR |bool |isWB |WB_enum previous \<br/>+ |WB_enum before \<br/>+ |WB_enum after \<br/> |NN const U8 * const strbeg \<br/> |NN const U8 * const curpos \<br/> |NN const U8 * const strend \<br/> |const bool utf8_target<br/>-EsR |PL_WB_enum|advance_one_WB|NN U8 ** curpos \<br/>+EsR |WB_enum|advance_one_WB |NN U8 ** curpos \<br/> |NN const U8 * const strend \<br/>- |const bool utf8_target<br/>-EsR |PL_WB_enum|backup_one_WB|NN PL_WB_enum * previous \<br/>+ |const bool utf8_target \<br/>+ |const bool skip_Extend_Format<br/>+EsR |WB_enum|backup_one_WB |NN WB_enum * previous \<br/> |NN const U8 * const strbeg \<br/> |NN U8 ** curpos \<br/> |const bool utf8_target<br/> # ifdef DEBUGGING<br/> Es |void |dump_exec_pos |NN const char *locinput|NN const regnode *scan|NN const char *loc_regeol\<br/>- |NN const char *loc_bostr|NN const char *loc_reg_starttry|const bool do_utf8<br/>+ |NN const char *loc_bostr|NN const char *loc_reg_starttry|const bool do_utf8|const U32 depth<br/> Es |void |debug_start_match|NN const REGEXP *prog|const bool do_utf8\<br/> |NN const char *start|NN const char *end\<br/> |NN const char *blurb<br/>+<br/>+Ep |int |re_exec_indentf |NN const char *fmt|U32 depth|...<br/> # endif<br/> #endif<br/> <br/> #if defined(PERL_IN_DUMP_C)<br/>-s |CV* |deb_curcv |const I32 ix<br/>+s |CV* |deb_curcv |I32 ix<br/> s |void |debprof |NN const OP *o<br/> s |UV |sequence_num |NULLOK const OP *o<br/> s |SV* |pm_description |NN const PMOP *pm<br/>@@ -2376,9 +2449,6 @@ s |STRLEN |sv_pos_b2u_midway|NN const U8 *const s|NN const U8 *const target \<br/> s |void |assert_uft8_cache_coherent|NN const char *const func \<br/> |STRLEN from_cache|STRLEN real|NN SV *const sv<br/> sn |char * |F0convert |NV nv|NN char *const endbuf|NN STRLEN *const len<br/>-# if defined(PERL_OLD_COPY_ON_WRITE)<br/>-sM |void |sv_release_COW |NN SV *sv|NN const char *pvx|NN SV *after<br/>-# endif<br/> s |SV * |more_sv<br/> s |bool |sv_2iuv_common |NN SV *const sv<br/> s |void |glob_assign_glob|NN SV *const dstr|NN SV *const sstr \<br/>@@ -2472,8 +2542,14 @@ s |char* |stdize_locale |NN char* locs<br/> #if defined(USE_LOCALE) \<br/> &amp;&amp; (defined(PERL_IN_LOCALE_C) || defined (PERL_EXT_POSIX))<br/> ApM |bool |_is_cur_LC_category_utf8|int category<br/>+# ifdef DEBUGGING<br/>+AMnPpR |char * |_setlocale_debug_string|const int category \<br/>+ |NULLOK const char* const locale \<br/>+ |NULLOK const char* const retval<br/>+# endif<br/> #endif<br/> <br/>+<br/> #if defined(PERL_IN_UTIL_C)<br/> s |SV* |mess_alloc<br/> s |SV * |with_queued_errors|NN SV *ex<br/>@@ -2487,6 +2563,12 @@ sn |void |mem_log_common |enum mem_log_type mlt|const UV n|const UV typesize \<br/> #endif<br/> #endif<br/> <br/>+#if defined(PERL_MEM_LOG)<br/>+pn |Malloc_t |mem_log_alloc |const UV nconst|UV typesize|NN const char *type_name|Malloc_t newalloc|NN const char *filename|const int linenumber|NN const char *funcname<br/>+pn |Malloc_t |mem_log_realloc |const UV n|const UV typesize|NN const char *type_name|Malloc_t oldalloc|Malloc_t newalloc|NN const char *filename|const int linenumber|NN const char *funcname<br/>+pn |Malloc_t |mem_log_free |Malloc_t oldalloc|NN const char *filename|const int linenumber|NN const char *funcname<br/>+#endif<br/>+<br/> #if defined(PERL_IN_NUMERIC_C)<br/> #ifndef USE_QUADMATH<br/> sn |NV|mulexp10 |NV value|I32 exponent<br/>@@ -2506,7 +2588,9 @@ sRM |U8* |swash_scan_list_line|NN U8* l|NN U8* const lend|NN UV* min \<br/> |NN const U8* const typestr<br/> #endif<br/> <br/>+#ifndef PERL_NO_INLINE_FUNCTIONS<br/> AiMn |void |append_utf8_from_native_byte|const U8 byte|NN U8** dest<br/>+#endif<br/> <br/> Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|const I32 flags<br/> Apd |void |sv_catpvn_flags|NN SV *const dstr|NN const char *sstr|const STRLEN len \<br/>@@ -2600,8 +2684,6 @@ Apd |PADOFFSET|pad_findmy_pv|NN const char* name|U32 flags<br/> Apd |PADOFFSET|pad_findmy_sv|NN SV* name|U32 flags<br/> ApdD |PADOFFSET|find_rundefsvoffset |<br/> Apd |SV* |find_rundefsv |<br/>-: Used in pp.c<br/>-p |SV* |find_rundefsv2 |NN CV *cv|U32 seq<br/> #if defined(PERL_IN_PAD_C)<br/> sd |PADOFFSET|pad_findlex |NN const char *namepv|STRLEN namelen|U32 flags \<br/> |NN const CV* cv|U32 seq|int warn \<br/>@@ -2743,7 +2825,7 @@ so |void |xs_version_bootcheck|U32 items|U32 ax|NN const char *xs_p \<br/> #endif<br/> Xpon |I32 |xs_handshake |const U32 key|NN void * v_my_perl\<br/> |NN const char * file| ...<br/>-Xp |void |xs_boot_epilog |const U32 ax<br/>+Xp |void |xs_boot_epilog |const I32 ax<br/> #ifndef HAS_STRLCAT<br/> Apnod |Size_t |my_strlcat |NULLOK char *dst|NULLOK const char *src|Size_t size<br/> #endif<br/>@@ -2834,5 +2916,41 @@ Ei |STRLEN |sv_or_pv_pos_u2b|NN SV *sv|NN const char *pv|STRLEN pos \<br/> #endif<br/> <br/> EMpPX |SV* |_get_encoding<br/>+Ap |void |clear_defarray |NN AV* av|bool abandon<br/>+<br/>+ApM |void |leave_adjust_stacks|NN SV **from_sp|NN SV **to_sp \<br/>+ |U8 gimme|int filter<br/>+<br/>+#ifndef PERL_NO_INLINE_FUNCTIONS<br/>+AiM |PERL_CONTEXT * |cx_pushblock|U8 type|U8 gimme|NN SV** sp|I32 saveix<br/>+AiM |void |cx_popblock|NN PERL_CONTEXT *cx<br/>+AiM |void |cx_topblock|NN PERL_CONTEXT *cx<br/>+AiM |void |cx_pushsub |NN PERL_CONTEXT *cx|NN CV *cv \<br/>+ |NULLOK OP *retop|bool hasargs<br/>+AiM |void |cx_popsub_common|NN PERL_CONTEXT *cx<br/>+AiM |void |cx_popsub_args |NN PERL_CONTEXT *cx<br/>+AiM |void |cx_popsub |NN PERL_CONTEXT *cx<br/>+AiM |void |cx_pushformat |NN PERL_CONTEXT *cx|NN CV *cv \<br/>+ |NULLOK OP *retop|NULLOK GV *gv<br/>+AiM |void |cx_popformat |NN PERL_CONTEXT *cx<br/>+AiM |void |cx_pusheval |NN PERL_CONTEXT *cx \<br/>+ |NULLOK OP *retop|NULLOK SV *namesv<br/>+AiM |void |cx_popeval |NN PERL_CONTEXT *cx<br/>+AiM |void |cx_pushloop_plain|NN PERL_CONTEXT *cx<br/>+AiM |void |cx_pushloop_for |NN PERL_CONTEXT *cx \<br/>+ |NN void *itervarp|NULLOK SV *itersave<br/>+AiM |void |cx_poploop |NN PERL_CONTEXT *cx<br/>+AiM |void |cx_pushwhen |NN PERL_CONTEXT *cx<br/>+AiM |void |cx_popwhen |NN PERL_CONTEXT *cx<br/>+AiM |void |cx_pushgiven |NN PERL_CONTEXT *cx|NULLOK SV *orig_defsv<br/>+AiM |void |cx_popgiven |NN PERL_CONTEXT *cx<br/>+#endif<br/>+<br/>+#ifdef USE_DTRACE<br/>+XEop |void |dtrace_probe_call |NN CV *cv|bool is_call<br/>+XEop |void |dtrace_probe_load |NN const char *name|bool is_loading<br/>+XEop |void |dtrace_probe_op |NN const OP *op<br/>+XEop |void |dtrace_probe_phase|enum perl_phase phase<br/>+#endif<br/> <br/> : ex: set ts=8 sts=4 sw=4 noet:<br/>diff --git a/cpan/Devel-PPPort/parts/inc/gv b/cpan/Devel-PPPort/parts/inc/gv<br/>index 62afb5b..d2f526f 100644<br/>--- a/cpan/Devel-PPPort/parts/inc/gv<br/>+++ b/cpan/Devel-PPPort/parts/inc/gv<br/>@@ -11,16 +11,34 @@<br/> <br/> =provides<br/> <br/>-__UNDEFINED__<br/>+gv_fetchpvn_flags<br/> <br/> =implementation<br/> <br/>+#ifndef gv_fetchpvn_flags<br/>+#if { NEED gv_fetchpvn_flags }<br/>+<br/>+GV*<br/>+gv_fetchpvn_flags(pTHX_ const char* name, STRLEN len, int flags, int types) {<br/>+ char *namepv = savepvn(name, len);<br/>+ GV* stash = gv_fetchpv(namepv, TRUE, SVt_PVHV);<br/>+ Safefree(namepv);<br/>+ return stash;<br/>+}<br/>+<br/>+#endif<br/>+#endif<br/>+<br/> __UNDEFINED__ GvSVn(gv) GvSV(gv)<br/> __UNDEFINED__ isGV_with_GP(gv) isGV(gv)<br/>-__UNDEFINED__ gv_fetchpvn_flags(name, len, flags, svt) gv_fetchpv(name, flags, svt)<br/> __UNDEFINED__ gv_fetchsv(name, flags, svt) gv_fetchpv(SvPV_nolen_const(name), flags, svt)<br/> <br/> __UNDEFINED__ get_cvn_flags(name, namelen, flags) get_cv(name, flags)<br/>+__UNDEFINED__ gv_init_pvn(gv, stash, ptr, len, flags) gv_init(gv, stash, ptr, len, flags &amp; GV_ADDMULTI ? TRUE : FALSE)<br/>+<br/>+=xsinit<br/>+<br/>+#define NEED_gv_fetchpvn_flags<br/> <br/> =xsubs<br/> <br/>@@ -74,7 +92,11 @@ get_cvn_flags()<br/> SV*<br/> gv_fetchpvn_flags()<br/> CODE:<br/>- RETVAL = newRV_inc((SV*)gv_fetchpvn_flags(&quot;Devel::PPPort::VERSION&quot;, sizeof(&quot;Devel::PPPort::VERSION&quot;)-1, 0, SVt_PV));<br/>+#if { VERSION &lt; 5.9.2 } || { VERSION &gt; 5.9.3 } /* 5.9.2 and 5.9.3 ignore the length param */<br/>+ RETVAL = newRV_inc((SV*)gv_fetchpvn_flags(&quot;Devel::PPPort::VERSIONFAKE&quot;, sizeof(&quot;Devel::PPPort::VERSIONFAKE&quot;)-5, 0, SVt_PV));<br/>+#else<br/>+ RETVAL = newRV_inc((SV*)gv_fetchpvn_flags(&quot;Devel::PPPort::VERSION&quot;, 0, 0, SVt_PV));<br/>+#endif<br/> OUTPUT:<br/> RETVAL<br/> <br/>@@ -86,7 +108,24 @@ gv_fetchsv(name)<br/> OUTPUT:<br/> RETVAL<br/> <br/>-=tests plan =&gt; 5<br/>+void<br/>+gv_init_type(namesv, multi, flags)<br/>+ SV* namesv<br/>+ int multi<br/>+ I32 flags<br/>+ PREINIT:<br/>+ HV *defstash = gv_stashpv(&quot;main&quot;, 0);<br/>+ STRLEN len;<br/>+ const char * const name = SvPV_const(namesv, len);<br/>+ GV *gv = *(GV**)hv_fetch(defstash, name, len, TRUE);<br/>+ PPCODE:<br/>+ if (SvTYPE(gv) == SVt_PVGV)<br/>+ Perl_croak(aTHX_ &quot;GV is already a PVGV&quot;);<br/>+ if (multi) flags |= GV_ADDMULTI;<br/>+ gv_init_pvn(gv, defstash, name, len, flags);<br/>+ XPUSHs( gv ? (SV*)gv : &amp;PL_sv_undef);<br/>+<br/>+=tests plan =&gt; 7<br/> <br/> ok(Devel::PPPort::GvSVn(), 1);<br/> <br/>@@ -97,3 +136,6 @@ ok(Devel::PPPort::get_cvn_flags(), 3);<br/> ok(Devel::PPPort::gv_fetchpvn_flags(), \*Devel::PPPort::VERSION);<br/> <br/> ok(Devel::PPPort::gv_fetchsv(&quot;Devel::PPPort::VERSION&quot;), \*Devel::PPPort::VERSION);<br/>+<br/>+ok(Devel::PPPort::gv_init_type(&quot;sanity_check&quot;, 0, 0), &quot;*main::sanity_check&quot;);<br/>+ok($::{sanity_check});<br/>diff --git a/cpan/Devel-PPPort/parts/inc/magic b/cpan/Devel-PPPort/parts/inc/magic<br/>index a99cd80..bf43a9c 100644<br/>--- a/cpan/Devel-PPPort/parts/inc/magic<br/>+++ b/cpan/Devel-PPPort/parts/inc/magic<br/>@@ -29,13 +29,15 @@ __UNDEFINED__ SvGETMAGIC(x) STMT_START { if (SvGMAGICAL(x)) mg_get(x); } STMT_E<br/> <br/> __UNDEFINED__ HEf_SVKEY -2<br/> <br/>+#ifndef MUTABLE_PTR<br/> #if defined(__GNUC__) &amp;&amp; !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN)<br/> # define MUTABLE_PTR(p) ({ void *_p = (p); _p; })<br/> #else<br/> # define MUTABLE_PTR(p) ((void *) (p))<br/> #endif<br/>+#endif<br/> <br/>-#define MUTABLE_SV(p) ((SV *)MUTABLE_PTR(p))<br/>+__UNDEFINED__ MUTABLE_SV(p) ((SV *)MUTABLE_PTR(p))<br/> <br/> /* end of random bits */<br/> <br/>diff --git a/cpan/Devel-PPPort/parts/inc/misc b/cpan/Devel-PPPort/parts/inc/misc<br/>index aedad05..181311e 100644<br/>--- a/cpan/Devel-PPPort/parts/inc/misc<br/>+++ b/cpan/Devel-PPPort/parts/inc/misc<br/>@@ -16,6 +16,7 @@ PERL_UNUSED_DECL<br/> PERL_UNUSED_ARG<br/> PERL_UNUSED_VAR<br/> PERL_UNUSED_CONTEXT<br/>+PERL_UNUSED_RESULT<br/> PERL_GCC_BRACE_GROUPS_FORBIDDEN<br/> PERL_USE_GCC_BRACE_GROUPS<br/> PERLIO_FUNCS_DECL<br/>@@ -38,9 +39,51 @@ UTF8_MAXBYTES<br/> WIDEST_UTYPE<br/> XSRETURN<br/> HeUTF8<br/>+C_ARRAY_LENGTH<br/>+C_ARRAY_END<br/>+SvRX<br/>+SvRXOK<br/>+PERL_MAGIC_qr<br/>+cBOOL<br/>+OpHAS_SIBLING<br/>+OpSIBLING<br/>+OpMORESIB_set<br/>+OpLASTSIB_set<br/>+OpMAYBESIB_set<br/> <br/> =implementation<br/> <br/>+__UNDEFINED__ PERL_MAGIC_qr &#39;r&#39;<br/>+<br/>+__UNDEFINED__ cBOOL(cbool) ((cbool) ? (bool)1 : (bool)0)<br/>+__UNDEFINED__ OpHAS_SIBLING(o) (cBOOL((o)-&gt;op_sibling))<br/>+__UNDEFINED__ OpSIBLING(o) (0 + (o)-&gt;op_sibling)<br/>+__UNDEFINED__ OpMORESIB_set(o, sib) ((o)-&gt;op_sibling = (sib))<br/>+__UNDEFINED__ OpLASTSIB_set(o, parent) ((o)-&gt;op_sibling = NULL)<br/>+__UNDEFINED__ OpMAYBESIB_set(o, sib, parent) ((o)-&gt;op_sibling = (sib))<br/>+<br/>+#ifndef SvRX<br/>+#if { NEED SvRX }<br/>+<br/>+void *<br/>+SvRX(pTHX_ SV *rv)<br/>+{<br/>+ if (SvROK(rv)) {<br/>+ SV *sv = SvRV(rv);<br/>+ if (SvMAGICAL(sv)) {<br/>+ MAGIC *mg = mg_find(sv, PERL_MAGIC_qr);<br/>+ if (mg &amp;&amp; mg-&gt;mg_obj) {<br/>+ return mg-&gt;mg_obj;<br/>+ }<br/>+ }<br/>+ }<br/>+ return 0;<br/>+}<br/>+#endif<br/>+#endif<br/>+<br/>+__UNDEFINED__ SvRXOK(sv) (!!SvRX(sv))<br/>+<br/> #ifndef PERL_UNUSED_DECL<br/> # ifdef HASATTRIBUTE<br/> # if (defined(__GNUC__) &amp;&amp; defined(__cplusplus)) || defined(__INTEL_COMPILER)<br/>@@ -74,6 +117,14 @@ HeUTF8<br/> # endif<br/> #endif<br/> <br/>+#ifndef PERL_UNUSED_RESULT<br/>+# if defined(__GNUC__) &amp;&amp; defined(HASATTRIBUTE_WARN_UNUSED_RESULT)<br/>+# define PERL_UNUSED_RESULT(v) STMT_START { __typeof__(v) z = (v); (void)sizeof(z); } STMT_END<br/>+# else<br/>+# define PERL_UNUSED_RESULT(v) ((void)(v))<br/>+# endif<br/>+#endif<br/>+<br/> __UNDEFINED__ NOOP /*EMPTY*/(void)0<br/> __UNDEFINED__ dNOOP extern int /*@unused@*/ Perl___notused PERL_UNUSED_DECL<br/> <br/>@@ -299,6 +350,9 @@ __UNDEFINED__ HeUTF8(he) ((HeKLEN(he) == HEf_SVKEY) ? \<br/> <br/> #endif<br/> <br/>+__UNDEFINED__ C_ARRAY_LENGTH(a) (sizeof(a)/sizeof((a)[0]))<br/>+__UNDEFINED__ C_ARRAY_END(a) ((a) + C_ARRAY_LENGTH(a))<br/>+<br/> =xsmisc<br/> <br/> typedef XSPROTO(XSPROTO_test_t);<br/>@@ -333,6 +387,10 @@ XS(XS_Devel__PPPort_dAXMARK)<br/> XSRETURN(1);<br/> }<br/> <br/>+=xsinit<br/>+<br/>+#define NEED_SvRX<br/>+<br/> =xsboot<br/> <br/> {<br/>@@ -344,6 +402,89 @@ newXS(&quot;Devel::PPPort::dAXMARK&quot;, XS_Devel__PPPort_dAXMARK, file);<br/> =xsubs<br/> <br/> int<br/>+OpSIBLING_tests()<br/>+ PREINIT:<br/>+ OP *x;<br/>+ OP *kid;<br/>+ OP *lastkid;<br/>+ int count = 0;<br/>+ int failures = 0;<br/>+ int i;<br/>+ CODE:<br/>+ x = newOP(OP_PUSHMARK, 0);<br/>+<br/>+ /* No siblings yet! */<br/>+ if (OpHAS_SIBLING(x) || OpSIBLING(x)) {<br/>+ failures++; warn(&quot;Op should not have had a sib&quot;);<br/>+ }<br/>+<br/>+<br/>+ /* Add 2 siblings */<br/>+ kid = x;<br/>+<br/>+ for (i = 0; i &lt; 2; i++) {<br/>+ OP *newsib = newOP(OP_PUSHMARK, 0);<br/>+ OpMORESIB_set(kid, newsib);<br/>+<br/>+ kid = OpSIBLING(kid);<br/>+ lastkid = kid;<br/>+ }<br/>+<br/>+ /* Should now have a sibling */<br/>+ if (! OpHAS_SIBLING(x) || ! OpSIBLING(x) ) {<br/>+ failures++; warn(&quot;Op should have had a sib after moresib_set&quot;);<br/>+ }<br/>+<br/>+ /* Count the siblings */<br/>+ for (kid = OpSIBLING(x); kid; kid = OpSIBLING(kid)) {<br/>+ count++;<br/>+ }<br/>+<br/>+ if (count != 2) {<br/>+ failures++; warn(&quot;Kid had %d sibs, expected 2&quot;, count);<br/>+ }<br/>+<br/>+ if (OpHAS_SIBLING(lastkid) || OpSIBLING(lastkid)) {<br/>+ failures++; warn(&quot;Last kid should not have a sib&quot;);<br/>+ }<br/>+<br/>+ /* Really sets the parent, and says &#39;no more siblings&#39; */<br/>+ OpLASTSIB_set(x, lastkid);<br/>+<br/>+ if (OpHAS_SIBLING(x) || OpSIBLING(x)) {<br/>+ failures++; warn(&quot;OpLASTSIB_set failed?&quot;);<br/>+ }<br/>+<br/>+ /* Restore the kid */<br/>+ OpMORESIB_set(x, lastkid);<br/>+<br/>+ /* Try to remove it again */<br/>+ OpLASTSIB_set(x, NULL);<br/>+<br/>+ if (OpHAS_SIBLING(x) || OpSIBLING(x)) {<br/>+ failures++; warn(&quot;OpLASTSIB_set with NULL failed?&quot;);<br/>+ }<br/>+<br/>+ /* Try to restore with maybesib_set */<br/>+ OpMAYBESIB_set(x, lastkid, NULL);<br/>+<br/>+ if (! OpHAS_SIBLING(x) || ! OpSIBLING(x) ) {<br/>+ failures++; warn(&quot;Op should have had a sib after maybesibset&quot;);<br/>+ }<br/>+<br/>+ RETVAL = failures;<br/>+ OUTPUT:<br/>+ RETVAL<br/>+<br/>+int<br/>+SvRXOK(sv)<br/>+ SV *sv<br/>+ CODE:<br/>+ RETVAL = SvRXOK(sv);<br/>+ OUTPUT:<br/>+ RETVAL<br/>+<br/>+int<br/> ptrtests()<br/> PREINIT:<br/> int var, *p = &amp;var;<br/>@@ -521,15 +662,22 @@ check_HeUTF8(utf8_key)<br/> hv_store(hash, key, klen, newSVpvs(&quot;string&quot;), 0);<br/> hv_iterinit(hash);<br/> ent = hv_iternext(hash);<br/>- if (ent) {<br/>- mXPUSHp((HeUTF8(ent) == 0 ? &quot;norm&quot; : &quot;utf8&quot;), 4);<br/>- }<br/>+ assert(ent);<br/>+ mXPUSHp((HeUTF8(ent) == 0 ? &quot;norm&quot; : &quot;utf8&quot;), 4);<br/> hv_undef(hash);<br/> <br/> <br/> #endif<br/> <br/>-=tests plan =&gt; 41<br/>+void<br/>+check_c_array()<br/>+ PREINIT:<br/>+ int x[] = { 10, 11, 12, 13 };<br/>+ PPCODE:<br/>+ mXPUSHi(C_ARRAY_LENGTH(x)); /* 4 */<br/>+ mXPUSHi(*(C_ARRAY_END(x)-1)); /* 13 */<br/>+<br/>+=tests plan =&gt; 48<br/> <br/> use vars qw($my_sv @my_av %my_hv);<br/> <br/>@@ -540,7 +688,7 @@ $_ = &quot;Fred&quot;;<br/> ok(&amp;Devel::PPPort::DEFSV(), &quot;Fred&quot;);<br/> ok(&amp;Devel::PPPort::UNDERBAR(), &quot;Fred&quot;);<br/> <br/>-if ($] &gt;= 5.009002 &amp;&amp; $] &lt; 5.023) {<br/>+if ($] &gt;= 5.009002 &amp;&amp; $] &lt; 5.023 &amp;&amp; $] &lt; 5.023004) {<br/> eval q{<br/> no warnings &quot;deprecated&quot;;<br/> no if $^V &gt; v5.17.9, warnings =&gt; &quot;experimental::lexical_topic&quot;;<br/>@@ -610,6 +758,8 @@ ok(&amp;Devel::PPPort::Perl_ppaddr_t(&quot;FOO&quot;), &quot;foo&quot;);<br/> <br/> ok(&amp;Devel::PPPort::ptrtests(), 63);<br/> <br/>+ok(&amp;Devel::PPPort::OpSIBLING_tests(), 0);<br/>+<br/> if ($] &gt;= 5.009000) {<br/> eval q{<br/> ok(&amp;Devel::PPPort::check_HeUTF8(&quot;hello&quot;), &quot;norm&quot;);<br/>@@ -619,3 +769,19 @@ if ($] &gt;= 5.009000) {<br/> ok(1, 1);<br/> ok(1, 1);<br/> }<br/>+<br/>+@r = &amp;Devel::PPPort::check_c_array();<br/>+ok($r[0], 4);<br/>+ok($r[1], &quot;13&quot;);<br/>+<br/>+ok(!Devel::PPPort::SvRXOK(&quot;&quot;));<br/>+ok(!Devel::PPPort::SvRXOK(bless [], &quot;Regexp&quot;));<br/>+<br/>+if ($] &lt; 5.005) {<br/>+ skip &#39;no qr// objects in this perl&#39;, 0;<br/>+ skip &#39;no qr// objects in this perl&#39;, 0;<br/>+} else {<br/>+ my $qr = eval &#39;qr/./&#39;;<br/>+ ok(Devel::PPPort::SvRXOK($qr));<br/>+ ok(Devel::PPPort::SvRXOK(bless $qr, &quot;Surprise&quot;));<br/>+}<br/>diff --git a/cpan/Devel-PPPort/parts/inc/variables b/cpan/Devel-PPPort/parts/inc/variables<br/>index 7ae6fab..afa53a6 100644<br/>--- a/cpan/Devel-PPPort/parts/inc/variables<br/>+++ b/cpan/Devel-PPPort/parts/inc/variables<br/>@@ -167,7 +167,7 @@ __NEED_DUMMY_VAR__ yy_parser PL_parser;<br/> /* PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters, PL_linestr, PL_bufptr, PL_bufend, PL_lex_state, PL_lex_stuff, PL_tokenbuf depends on PL_parser */<br/> /* Warning: PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters, PL_linestr, PL_bufptr, PL_bufend, PL_lex_state, PL_lex_stuff, PL_tokenbuf<br/> * Do not use this variable unless you know exactly what you&#39;re<br/>- * doint. It is internal to the perl parser and may change or even<br/>+ * doing. It is internal to the perl parser and may change or even<br/> * be removed in the future. As of perl 5.9.5, you have to check<br/> * for (PL_parser != NULL) for this variable to have any effect.<br/> * An always non-NULL PL_parser dummy is provided for earlier<br/>@@ -222,7 +222,12 @@ extern U32 get_PL_signals_3(void);<br/> int no_dummy_parser_vars(int);<br/> int dummy_parser_warning(void);<br/> <br/>-#define ppp_TESTVAR(var) STMT_START { mXPUSHi(&amp;var); count++; } STMT_END<br/>+/* No PTRSIZE IN 5.004 and below, so PTR2IV would warn and possibly misbehave */<br/>+#if { VERSION &gt; 5.004 }<br/>+ #define ppp_TESTVAR(var) STMT_START { mXPUSHi(PTR2IV(&amp;var)); count++; } STMT_END<br/>+#else<br/>+ #define ppp_TESTVAR(var) STMT_START { mXPUSHi(&amp;var); count++; } STMT_END<br/>+#endif<br/> <br/> #define ppp_PARSERVAR(type, var) STMT_START { \<br/> type volatile my_ ## var; \<br/>diff --git a/cpan/Devel-PPPort/parts/ppptools.pl b/cpan/Devel-PPPort/parts/ppptools.pl<br/>index 6ea7516..62e5339 100644<br/>--- a/cpan/Devel-PPPort/parts/ppptools.pl<br/>+++ b/cpan/Devel-PPPort/parts/ppptools.pl<br/>@@ -28,7 +28,7 @@ sub all_files_in_dir<br/> my @files = grep { !-d &amp;&amp; !/^\./ } readdir DIR; # no dirs or hidden files<br/> closedir DIR;<br/> <br/>- return map { cat_file($dir, $_) } @files;<br/>+ return map { cat_file($dir, $_) } sort @files;<br/> }<br/> <br/> sub parse_todo<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5004000 b/cpan/Devel-PPPort/parts/todo/5004000<br/>index 0fa079e..ec87e88 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5004000<br/>+++ b/cpan/Devel-PPPort/parts/todo/5004000<br/>@@ -3,6 +3,7 @@ GIMME_V # E<br/> G_VOID # E<br/> HePV # A<br/> HeSVKEY_set # U<br/>+POPu # E<br/> SvSetMagicSV # U<br/> SvSetMagicSV_nosteal # U<br/> SvSetSV_nosteal # U<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5004050 b/cpan/Devel-PPPort/parts/todo/5004050<br/>index 57937e8..0f7a1f7 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5004050<br/>+++ b/cpan/Devel-PPPort/parts/todo/5004050<br/>@@ -2,5 +2,6 @@<br/> CopyD # E<br/> MoveD # E<br/> do_binmode # U<br/>+my_bcopy # U<br/> save_aelem # U<br/> save_helem # U<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5006000 b/cpan/Devel-PPPort/parts/todo/5006000<br/>index 17d829f..8c8f7df 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5006000<br/>+++ b/cpan/Devel-PPPort/parts/todo/5006000<br/>@@ -1,6 +1,8 @@<br/> 5.006000<br/>+DO_UTF8 # U<br/> PERL_SYS_INIT3 # U<br/> PL_check # E<br/>+POPul # E<br/> SvIOK_UV # U<br/> SvIOK_notUV # U<br/> SvIOK_only_UV # U<br/>@@ -17,6 +19,7 @@ SvUOK # U<br/> SvUTF8 # U<br/> SvUTF8_off # U<br/> SvUTF8_on # U<br/>+UTF8SKIP # U<br/> av_delete # U<br/> av_exists # U<br/> call_atexit # E<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5007003 b/cpan/Devel-PPPort/parts/todo/5007003<br/>index cc22577..c9e1cea 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5007003<br/>+++ b/cpan/Devel-PPPort/parts/todo/5007003<br/>@@ -49,10 +49,6 @@ sv_nolocking # U<br/> sv_nosharing # U<br/> sv_recode_to_utf8 # U<br/> sv_uni_display # U<br/>-toFOLD_uni # U<br/>-toLOWER_uni # A<br/>-toTITLE_uni # A<br/>-toUPPER_uni # A<br/> to_uni_fold # U<br/> to_uni_lower # E (Perl_to_uni_lower)<br/> to_uni_title # E (Perl_to_uni_title)<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5009005 b/cpan/Devel-PPPort/parts/todo/5009005<br/>index 497ee91..a8ee73b 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5009005<br/>+++ b/cpan/Devel-PPPort/parts/todo/5009005<br/>@@ -1,7 +1,5 @@<br/> 5.009005<br/> Perl_signbit # U<br/>-SvRX # U<br/>-SvRXOK # U<br/> av_create_and_push # U<br/> av_create_and_unshift_one # U<br/> gv_fetchfile_flags # U<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5015004 b/cpan/Devel-PPPort/parts/todo/5015004<br/>index cce4634..d92eabc 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5015004<br/>+++ b/cpan/Devel-PPPort/parts/todo/5015004<br/>@@ -16,7 +16,6 @@ gv_fetchmethod_pv_flags # U<br/> gv_fetchmethod_pvn_flags # U<br/> gv_fetchmethod_sv_flags # U<br/> gv_init_pv # U<br/>-gv_init_pvn # U<br/> gv_init_sv # U<br/> newGVgen_flags # U<br/> sv_derived_from_pv # U<br/>@@ -25,6 +24,7 @@ sv_derived_from_sv # U<br/> sv_does_pv # U<br/> sv_does_pvn # U<br/> sv_does_sv # U<br/>+sv_ref # U<br/> whichsig_pv # U<br/> whichsig_pvn # U<br/> whichsig_sv # U<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5020002 b/cpan/Devel-PPPort/parts/todo/5020002<br/>new file mode 100644<br/>index 0000000..e31c0d0<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5020002<br/>@@ -0,0 +1 @@<br/>+5.020002<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5020003 b/cpan/Devel-PPPort/parts/todo/5020003<br/>new file mode 100644<br/>index 0000000..89ec619<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5020003<br/>@@ -0,0 +1 @@<br/>+5.020003<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5021002 b/cpan/Devel-PPPort/parts/todo/5021002<br/>index 1e17e3d..abe5ac1 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5021002<br/>+++ b/cpan/Devel-PPPort/parts/todo/5021002<br/>@@ -1,4 +1,3 @@<br/> 5.021002<br/> grok_number_flags # U<br/>-op_parent # U<br/> op_sibling_splice # U<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5021007 b/cpan/Devel-PPPort/parts/todo/5021007<br/>index 03c81e0..6b8b9ba 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5021007<br/>+++ b/cpan/Devel-PPPort/parts/todo/5021007<br/>@@ -1,7 +1,4 @@<br/> 5.021007<br/>-OpHAS_SIBLING # U<br/>-OpSIBLING # U<br/>-OpSIBLING_set # U<br/> PadnameUTF8 # E<br/> is_invariant_string # U<br/> newPADNAMELIST # U<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5021008 b/cpan/Devel-PPPort/parts/todo/5021008<br/>index 3d72724..ccba00c 100644<br/>--- a/cpan/Devel-PPPort/parts/todo/5021008<br/>+++ b/cpan/Devel-PPPort/parts/todo/5021008<br/>@@ -1,43 +1,2 @@<br/> 5.021008<br/>-BhkDISABLE # E<br/>-BhkENABLE # E<br/>-BhkENTRY_set # E<br/>-MULTICALL # E<br/>-PERL_SYS_TERM # E<br/>-POP_MULTICALL # E<br/>-PUSH_MULTICALL # E<br/>-PadARRAY # E<br/>-PadMAX # E<br/>-PadlistARRAY # E<br/>-PadlistMAX # E<br/>-PadlistNAMES # E<br/>-PadlistNAMESARRAY # E<br/>-PadlistNAMESMAX # E<br/>-PadnameLEN # E<br/>-PadnamePV # E<br/>-PadnameREFCNT # E<br/>-PadnameREFCNT_dec # E<br/>-PadnameSV # E<br/>-PadnamelistARRAY # E<br/>-PadnamelistMAX # E<br/>-PadnamelistREFCNT # E<br/>-PadnamelistREFCNT_dec # E<br/>-XS_APIVERSION_BOOTCHECK # E<br/>-XS_EXTERNAL # E<br/>-XS_INTERNAL # E<br/>-XS_VERSION_BOOTCHECK # E<br/>-XopDISABLE # E<br/>-XopENABLE # E<br/>-XopENTRY # E<br/>-XopENTRYCUSTOM # E<br/>-XopENTRY_set # E<br/>-cophh_new_empty # E<br/>-my_lstat # U (Perl_my_lstat)<br/>-my_stat # U (Perl_my_stat)<br/>-reentrant_free # U<br/>-reentrant_init # U<br/>-reentrant_retry # U<br/>-reentrant_size # U<br/>-ref # U (Perl_ref)<br/> sv_get_backrefs # U<br/>-sv_setref_pvs # A<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5021009 b/cpan/Devel-PPPort/parts/todo/5021009<br/>new file mode 100644<br/>index 0000000..7397722<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5021009<br/>@@ -0,0 +1 @@<br/>+5.021009<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5021010 b/cpan/Devel-PPPort/parts/todo/5021010<br/>new file mode 100644<br/>index 0000000..821a8fb<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5021010<br/>@@ -0,0 +1,2 @@<br/>+5.021010<br/>+DECLARATION_FOR_LC_NUMERIC_MANIPULATION # E<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5021011 b/cpan/Devel-PPPort/parts/todo/5021011<br/>new file mode 100644<br/>index 0000000..22e7302<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5021011<br/>@@ -0,0 +1 @@<br/>+5.021011<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5022000 b/cpan/Devel-PPPort/parts/todo/5022000<br/>new file mode 100644<br/>index 0000000..aca319e<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5022000<br/>@@ -0,0 +1,2 @@<br/>+5.022000<br/>+UVCHR_SKIP # U<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5022001 b/cpan/Devel-PPPort/parts/todo/5022001<br/>new file mode 100644<br/>index 0000000..28befba<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5022001<br/>@@ -0,0 +1 @@<br/>+5.022001<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5023000 b/cpan/Devel-PPPort/parts/todo/5023000<br/>new file mode 100644<br/>index 0000000..e461a32<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5023000<br/>@@ -0,0 +1 @@<br/>+5.023000<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5023001 b/cpan/Devel-PPPort/parts/todo/5023001<br/>new file mode 100644<br/>index 0000000..ea44212<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5023001<br/>@@ -0,0 +1 @@<br/>+5.023001<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5023002 b/cpan/Devel-PPPort/parts/todo/5023002<br/>new file mode 100644<br/>index 0000000..2060466<br/>--- /dev/null<br/>+++ b/cpan/Devel-PPPort/parts/todo/5023002<br/>@@ -0,0 +1 @@<br/>+5.023002<br/>diff --git a/cpan/Devel-PPPort/parts/todo/5023003 b/cpan/Devel-PPPort/parts/todo/5023003<br/>new file mode 100644<br/>index 0000000..4b19a24<br/>**** PATCH TRUNCATED AT 2000 LINES -- 203 NOT SHOWN ****<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47475.html Tue, 21 Jun 2016 13:34:36 +0000 [perl.git] branch blead, updated. v5.25.2-10-gbf49eae by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/bf49eae4014ca7ff7b44362d99251f5b9f30bec8?hp=00ac85b948033a963c2554006b5836e7ffb379c9&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit bf49eae4014ca7ff7b44362d99251f5b9f30bec8<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Tue Jun 21 14:22:16 2016 +0100<br/><br/> Perl_my_vsnprintf: avoid compiler warning<br/> <br/> in the usequadmath branch, gcc is too clever for its own good:<br/> <br/> PERL_UNUSED_ARG(ap);<br/> <br/> gives:<br/> <br/> util.c:5299:18: warning: &acirc;&#128;&#152;sizeof&acirc;&#128;&#153; on array function parameter &acirc;&#128;&#152;ap&acirc;&#128;&#153; will<br/> return size of &acirc;&#128;&#152;__va_list_tag *&acirc;&#128;&#153; [-Wsizeof-array-argument]<br/> <br/> Stick in a void* cast to shut it up.<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> util.c | 3 ++-<br/> 1 file changed, 2 insertions(+), 1 deletion(-)<br/><br/>diff --git a/util.c b/util.c<br/>index 2f78825..7748c6c 100644<br/>--- a/util.c<br/>+++ b/util.c<br/>@@ -5296,7 +5296,8 @@ Perl_my_vsnprintf(char *buffer, const Size_t len, const char *format, va_list ap<br/> PERL_UNUSED_ARG(buffer);<br/> PERL_UNUSED_ARG(len);<br/> PERL_UNUSED_ARG(format);<br/>- PERL_UNUSED_ARG(ap);<br/>+ /* the cast is to avoid gcc -Wsizeof-array-argument complaining */<br/>+ PERL_UNUSED_ARG((void*)ap);<br/> Perl_croak_nocontext(&quot;panic: my_vsnprintf not available with quadmath&quot;);<br/> return 0;<br/> #else<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47474.html Tue, 21 Jun 2016 13:32:35 +0000 [perl.git] branch blead, updated. v5.25.2-9-g00ac85b by Dave Mitchell In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/00ac85b948033a963c2554006b5836e7ffb379c9?hp=143048c08af5307d9b4ff95c3322a6c67cff93cd&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 00ac85b948033a963c2554006b5836e7ffb379c9<br/>Author: David Mitchell &lt;davem@iabyn.com&gt;<br/>Date: Tue Jun 21 13:28:19 2016 +0100<br/><br/> PerlIO-encoding/t/fallback.t: test for warning<br/> <br/> The previous commit fixed a typo that had been present since this test<br/> script was created: WARN_ON_ERR misspelt as WARN_ON_ERROR. This means<br/> that one of the tests is now (correctly) issuing a warning. Rather than<br/> that spilling out onto STDERR, capture it and test it instead.<br/><br/>M ext/PerlIO-encoding/t/fallback.t<br/><br/>commit 76744982a904f21ca6ade6b1e09f5dd764508ca4<br/>Author: Salvador Fandino &lt;sfandino@yahoo.com&gt;<br/>Date: Thu May 12 14:40:24 2016 +0200<br/><br/> Fix Encode constant name usage: WARN_ON_ERROR --&gt; WARN_ON_ERR<br/><br/>M ext/PerlIO-encoding/t/fallback.t<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> ext/PerlIO-encoding/t/fallback.t | 21 ++++++++++++++-------<br/> 1 file changed, 14 insertions(+), 7 deletions(-)<br/><br/>diff --git a/ext/PerlIO-encoding/t/fallback.t b/ext/PerlIO-encoding/t/fallback.t<br/>index 17c241c..cf3fdc3 100644<br/>--- a/ext/PerlIO-encoding/t/fallback.t<br/>+++ b/ext/PerlIO-encoding/t/fallback.t<br/>@@ -16,7 +16,7 @@ BEGIN {<br/> import Encode qw(:fallback_all);<br/> }<br/> <br/>-use Test::More tests =&gt; 9;<br/>+use Test::More tests =&gt; 10;<br/> <br/> # $PerlIO::encoding = 0; # WARN_ON_ERR|PERLQQ;<br/> <br/>@@ -64,13 +64,20 @@ printf &quot;# %x\n&quot;,ord($line);<br/> is($line,&quot;\\xA30.02\n&quot;,&quot;Escaped non-mapped char&quot;);<br/> close($fh);<br/> <br/>-$PerlIO::encoding::fallback = Encode::WARN_ON_ERROR;<br/>+{<br/>+ my $message = &#39;&#39;;<br/>+ local $SIG{__WARN__} = sub { $message = $_[0] };<br/> <br/>-ok(open($fh,&quot;&lt;encoding(US-ASCII)&quot;,$file),&quot;Opened as ASCII&quot;);<br/>-my $line = &lt;$fh&gt;;<br/>-printf &quot;# %x\n&quot;,ord($line);<br/>-is($line,&quot;\x{FFFD}0.02\n&quot;,&quot;Unicode replacement char&quot;);<br/>-close($fh);<br/>+ $PerlIO::encoding::fallback = Encode::WARN_ON_ERR;<br/>+<br/>+ ok(open($fh,&quot;&lt;encoding(US-ASCII)&quot;,$file),&quot;Opened as ASCII&quot;);<br/>+ my $line = &lt;$fh&gt;;<br/>+ printf &quot;# %x\n&quot;,ord($line);<br/>+ is($line,&quot;\x{FFFD}0.02\n&quot;,&quot;Unicode replacement char&quot;);<br/>+ close($fh);<br/>+<br/>+ like($message, qr/does not map to Unicode/o, &quot;FB_WARN message&quot;);<br/>+}<br/> <br/> END {<br/> 1 while unlink($file);<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47473.html Tue, 21 Jun 2016 12:37:39 +0000 [perl.git] branch blead, updated. v5.25.2-7-g143048c by Tony Cook In perl.git, the branch blead has been updated<br/><br/>&lt;http://perl5.git.perl.org/perl.git/commitdiff/143048c08af5307d9b4ff95c3322a6c67cff93cd?hp=c338e234d57f13141c5e04b6361ed8cc9e14b42a&gt;<br/><br/>- Log -----------------------------------------------------------------<br/>commit 143048c08af5307d9b4ff95c3322a6c67cff93cd<br/>Author: Tony Cook &lt;tony@develop-help.com&gt;<br/>Date: Tue Jun 21 14:23:16 2016 +1000<br/><br/> (perl #128359) prevent a const-ness warning on Cygwin<br/>-----------------------------------------------------------------------<br/><br/>Summary of changes:<br/> time64.h | 3 ++-<br/> 1 file changed, 2 insertions(+), 1 deletion(-)<br/><br/>diff --git a/time64.h b/time64.h<br/>index 6f60bce..78efc73 100644<br/>--- a/time64.h<br/>+++ b/time64.h<br/>@@ -32,7 +32,8 @@ struct TM64 {<br/> * Otherwise, if we are on android, use const but<br/> * not with g++.<br/> */<br/>-# if defined(__GLIBC__) || (defined(__ANDROID__) &amp;&amp; !defined(__cplusplus)) || defined(__QNX__)<br/>+# if defined(__GLIBC__) || (defined(__ANDROID__) &amp;&amp; !defined(__cplusplus)) \<br/>+ || defined(__QNX__) || defined(__CYGWIN__)<br/> const<br/> # endif<br/> char *tm_zone;<br/><br/>--<br/>Perl5 Master Repository<br/> http://www.nntp.perl.org/group/perl.perl5.changes/2016/06/msg47472.html Tue, 21 Jun 2016 04:32:15 +0000