8 years agoEnsure and the scripts that it calls can be run by older perls.
Nicholas Clark [Wed, 22 Sep 2010 12:50:20 +0000 (13:50 +0100)] 
Ensure and the scripts that it calls can be run by older perls.

As the internal comments state, they may be all that is available, particularly
if trying to port something to an obscure platform. There's not that much that
needs changing to get back to 5.005, or from there to 5.004, but beyond there
is hard work, and really not worth it.

8 years agoIn's walk_table, the default filename of '-' was never used.
Nicholas Clark [Wed, 22 Sep 2010 09:49:24 +0000 (10:49 +0100)] 
In's walk_table, the default filename of '-' was never used.

Remove it, simplifying the argument passing.

8 years agoProgrammatically generate the compatibility macros for "misnamed functions".
Nicholas Clark [Wed, 22 Sep 2010 09:03:13 +0000 (10:03 +0100)] 
Programmatically generate the compatibility macros for "misnamed functions".

Add a new flag 'O' in embed.fnc to generate a macro mapping perl_$func() to
$func(). The macro for call_atexit() is far too special to do this way.

8 years agoRemove from various long commented out and dead code.
Nicholas Clark [Wed, 22 Sep 2010 11:05:19 +0000 (12:05 +0100)] 
Remove from various long commented out and dead code.

This code was commented out/rendered vestigial in 1998, 2000 and 2002 by
599cee73f2261c5ed3a7d8c7d7e4d69d and 0d658bf5a06395c2.

8 years agoFix misinformation in perldebtut
Florian Ragwitz [Wed, 22 Sep 2010 07:30:25 +0000 (09:30 +0200)] 
Fix misinformation in perldebtut

'B' is for removing breakpoints, not 'd' or 'D'. Pointed out by Jerry Huth.

8 years agoWe're going to embed two interpreters, not four
Florian Ragwitz [Tue, 21 Sep 2010 11:29:06 +0000 (13:29 +0200)] 
We're going to embed two interpreters, not four

8 years agomake sure perl doesn't touch stat.t between stats
Tony Cook [Wed, 22 Sep 2010 04:28:36 +0000 (14:28 +1000)] 
make sure perl doesn't touch stat.t between stats

ebcfa0534 changed stat.t to avoid using TEST as the stat target, since
it is read by other test scripts.  But with the initial stat() in the
BEGIN block perl is still reading the script for compilation, which
will update the access time.  Since the system clock usually didn't
tick another second between the first and second stats, the test
usually succeeded, but occasionally the clock would tick, and the test
would fail.

Moved the stat() out of the BEGIN block to avoid that.

As a check I temporarily added a 2 second sleep after the initial
stat to ensure we didn't have a similar problem to that will
allowed this to pass most of the time.

8 years ago‘criteria was’ -> ‘criteria were’
Father Chrysostomos [Tue, 21 Sep 2010 23:23:11 +0000 (16:23 -0700)] 
‘criteria was’ -> ‘criteria were’

8 years agoProgrammatically generate embed.h's *_nocontext exception list in
Nicholas Clark [Tue, 21 Sep 2010 16:06:27 +0000 (17:06 +0100)] 
Programmatically generate embed.h's *_nocontext exception list in

Previously the list was hard-coded.

8 years agoIn, read embed.fnc into an array, rather than seeking and rereading.
Nicholas Clark [Tue, 21 Sep 2010 15:31:41 +0000 (16:31 +0100)] 
In, read embed.fnc into an array, rather than seeking and rereading.

8 years agoIn, %vfuncs has been unused since PERL_OBJECT was removed in 2001.
Nicholas Clark [Tue, 21 Sep 2010 14:49:53 +0000 (15:49 +0100)] 
In, %vfuncs has been unused since PERL_OBJECT was removed in 2001.

PERL_OBJECT was removed in commit acfe0abcedaf592f. No point in keeping dead

8 years agoExtUtils::Constant::ProxySubs should use mro_method_changed_in() if available.
Nicholas Clark [Tue, 21 Sep 2010 14:11:17 +0000 (15:11 +0100)] 
ExtUtils::Constant::ProxySubs should use mro_method_changed_in() if available.

8 years agoAdd macro_to_ifndef to ExtUtils::Constant::Base, and use it in place of #else
Nicholas Clark [Tue, 21 Sep 2010 13:55:52 +0000 (14:55 +0100)] 
Add macro_to_ifndef to ExtUtils::Constant::Base, and use it in place of #else

Previously the code was using the #ifdef generated by macro_to_ifdef(), and
immediately following that with an #else. That was ugly. And longer.

8 years agoTweak ExtUtils::Constant::ProxySubs to use hv_exists_ent().
Nicholas Clark [Tue, 21 Sep 2010 13:27:19 +0000 (14:27 +0100)] 
Tweak ExtUtils::Constant::ProxySubs to use hv_exists_ent().

Previously it was using hv_exists(), requiring extra code to unpack the SV and
convert it to the correct string form for the hash API.

8 years agoRemove boilerplate and (un)conditional code from Makefile.PLs in ext
Nicholas Clark [Tue, 21 Sep 2010 13:07:00 +0000 (14:07 +0100)] 
Remove boilerplate and (un)conditional code from Makefile.PLs in ext

8 years agoTweak XS::APItest to automatically add all functions to @EXPORT.
Nicholas Clark [Tue, 21 Sep 2010 12:34:12 +0000 (13:34 +0100)] 
Tweak XS::APItest to automatically add all functions to @EXPORT.

This saves manually maintaining the export list, which is makework given that
the module is only used by its own tests. As the export now folds in symbols
from subpackages, this will allow refactoring/reordering/rationalisation of
the layout of testing routines in it.

8 years agoEliminate PL_* accessor functions under ithreads.
Nicholas Clark [Thu, 19 Aug 2010 14:54:12 +0000 (15:54 +0100)] 
Eliminate PL_* accessor functions under ithreads.

When MULTIPLICITY was first developed, and interpreter state moved into an
interpreter struct, thread and interpreter local PL_* variables were defined
as macros that called accessor functions, returning the address of the value,
outside of the perl core. The intent was to allow members within the
interpreter struct to change size without breaking binary compatibility, so
that bug fixes could be merged to a maintenance branch that necessitated such
a size change.

However, some non-core code defines PERL_CORE, sometimes intentionally to
bypass this mechanism for speed reasons, sometimes for other reasons but with
the inadvertent side effect of bypassing this mechanism. As some of this code
is widespread in production use, the result is that the core *can't* change
the size of members of the interpreter struct, as it will break such modules
compiled against a previous release on that maintenance branch. The upshot
is that this mechanism is redundant, and well-behaved code is penalised by
it. Hence it can and should be removed.

Accessor functions are still needed for globals when PERL_GLOBAL_STRUCT is

8 years agoClarify a perldelta entry
Father Chrysostomos [Tue, 21 Sep 2010 07:31:58 +0000 (00:31 -0700)] 
Clarify a perldelta entry

8 years agoperldelta entries for the last two bug fixes
Father Chrysostomos [Tue, 21 Sep 2010 07:07:21 +0000 (00:07 -0700)] 
perldelta entries for the last two bug fixes

8 years agoMention wide character warnings in perl5135delta.pod
Father Chrysostomos [Tue, 21 Sep 2010 06:51:40 +0000 (23:51 -0700)] 
Mention wide character warnings in perl5135delta.pod

An oversight: warn and die now produced wide character warnings, as
well as print.

This commit adds them to perl5135delta.pod retroactively, so they will
make their way into perl5140delta.pod.

8 years agoFix pod syntax in perlsub
Father Chrysostomos [Tue, 21 Sep 2010 05:51:39 +0000 (22:51 -0700)] 
Fix pod syntax in perlsub

8 years ago[perl #47365] Docs for \$ prototypes
Father Chrysostomos [Tue, 21 Sep 2010 05:29:03 +0000 (22:29 -0700)] 
[perl #47365] Docs for \$ prototypes

\$ allows any hash/array element, even if it does not start with a
dollar sign.

8 years agoTest localization of’s $LIST_SEPARATOR [perl #47107]
Michael G Schwern [Tue, 21 Sep 2010 05:23:48 +0000 (22:23 -0700)] 
Test localization of’s $LIST_SEPARATOR [perl #47107]

8 years agoLet B::Deparse know about the [perl #20444] fix.
Father Chrysostomos [Tue, 21 Sep 2010 05:05:39 +0000 (22:05 -0700)] 
Let B::Deparse know about the [perl #20444] fix.

With the previous commit:

$ ./perl -Ilib -MO=Deparse -e'"foo" =~ (1?/foo/:/bar/)'
'foo' =~ /foo/;
-e syntax OK

So the Deparse output no longer matches what perl does. With
this commit:

$ ./perl -Ilib -MO=Deparse -e'"foo" =~ (1?/foo/:/bar/)'
'foo' =~ ($_ =~ /foo/);
-e syntax OK

8 years ago[perl #20444] regex not evaluated in constant ?:
Father Chrysostomos [Tue, 21 Sep 2010 05:05:34 +0000 (22:05 -0700)] 
[perl #20444] regex not evaluated in constant ?:

  $text =~ ( 1 ? /phoo/ : /bear/)

used to be constant-folded to

  $text =~ /phoo/

This patch solves the problem by marking match and subst ops as
OPf_SPECIAL during constant folding, so the =~ operator can tell not
to take possession of it.

8 years ago[perl #19078] wrong match order inside replacement
Father Chrysostomos [Tue, 21 Sep 2010 04:24:02 +0000 (21:24 -0700)] 
[perl #19078] wrong match order inside replacement

$ perl -le '$_="CCCGGG"; s!.!@a{print("[$&]"),/./}!g'

What’s happening is that the s/// does not reset PL_curpm for each
iteration, because it doesn’t usually have to.

The RHS’s scoping takes care of it most of the time. This happens with
the /e modifier and with @{...}.

In this example, though, we have a subscript, not a block. This sub-
script is in the same scope as the s/// itself.

The assumption that the substitution operator will never have to reset
PL_curpm itself appears to be incorrect. This fixes it.

8 years agocompare stat results on a file that isn't touched elsewhere
Tony Cook [Tue, 21 Sep 2010 04:03:37 +0000 (14:03 +1000)] 
compare stat results on a file that isn't touched elsewhere

lib/File/stat.t compares two stat calls on t/TEST against each
other, but other tests read t/TEST, modifying its access time,
causing rare random failures in stat.t in parallel tests.

8 years agoDon't process .patch in Configure
Jerry D. Hedden [Mon, 20 Sep 2010 17:42:06 +0000 (13:42 -0400)] 
Don't process .patch in Configure

The format of the .patch file is no longer an integer change
number, and generates an error when processed by Configure.
As .patch is now handled by, the attached
patch removes processing of .patch from Configure.

8 years agoRestore Unicode-Normalize .gitignore to ignore build products
Tony Cook [Tue, 21 Sep 2010 00:02:33 +0000 (10:02 +1000)] 
Restore Unicode-Normalize .gitignore to ignore build products

8 years agoAdd two (SV *) casts to placate C++.
Tony Cook [Mon, 20 Sep 2010 23:53:42 +0000 (09:53 +1000)] 
Add two (SV *) casts to placate C++.

8 years agoUpdate perldelta.pod with recent module updates
Chris 'BinGOs' Williams [Mon, 20 Sep 2010 23:26:53 +0000 (00:26 +0100)] 
Update perldelta.pod with recent module updates

8 years agoUpdate Unicode-Normalize to CPAN version 1.07
Chris 'BinGOs' Williams [Mon, 20 Sep 2010 23:24:48 +0000 (00:24 +0100)] 
Update Unicode-Normalize to CPAN version 1.07


  1.07  Mon Sep 20 20:20:02 2010
    - doc: about perl 5.12.x and Unicode 5.2.0
    - test: prototype of normalize_partial() and cousins in proto.t.

8 years agoAdd missing bug numbers
Father Chrysostomos [Mon, 20 Sep 2010 22:44:55 +0000 (15:44 -0700)] 
Add missing bug numbers

8 years agocall defout/stderr destructors last
David Mitchell [Mon, 20 Sep 2010 21:14:23 +0000 (22:14 +0100)] 
call defout/stderr destructors last

When calling the destructors for IO objects embedded in arena GVs,
process PL_defoutgv and PL_stderrgv last. Yes, the test suite
expects STDOUT to still work at this point. Indeed, one test in ref.t
calls print from STDOUT's destructor (which is why pp_print needed a
slight tweak to handle a null GV properly).

8 years agorun named IO destructors later
David Mitchell [Mon, 20 Sep 2010 12:43:33 +0000 (13:43 +0100)] 
run named IO destructors later

split do_clean_named_objs() into two functions; the first skips the IO
slot, and the second, do_clean_named_io_objs(), only processes the IO slot.
This means that the destructors for IO objects are run later than for
other named objects, so the latter will still have access to all their IO.

This is a fix for 57ef47cc7bcd1b57927d5010f363ccaa10f1d990,
which changed do_clean_named_objs() to zap the slots of a GV rather
than just decrementing the GV's ref count. This change ensures
referential integrity, but means that GVs with a reference > 1 will still
have their slots zapped. In particular, it means that PL_defoutgv no
longer gets delayed zapping. However, this has always been a problem
for any other file handles; depending on the order of GV zapping, a file
handle could be freed before a destructor gets called that might use it.

So this is a general fix.

8 years ago[perl #77930] cx_stack reallocation during sort
Father Chrysostomos [Mon, 20 Sep 2010 08:23:35 +0000 (10:23 +0200)] 
[perl #77930] cx_stack reallocation during sort

Reset cx in pp_sort before POPSUB, as the pointer may no
longer be valid.

8 years agoporting/manifest.t fail gracefully under !git
David Mitchell [Mon, 20 Sep 2010 08:15:56 +0000 (09:15 +0100)] 
porting/manifest.t fail gracefully under !git

This test was producing spurious output to stderr when not under
git control (e.g. a release tarball):

fatal: Not a git repository (or any parent up to mount parent )
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).

8 years agoUpgrade PathTools to 3.33
Steffen Mueller [Mon, 20 Sep 2010 07:56:10 +0000 (09:56 +0200)] 
Upgrade PathTools to 3.33

This is just a version bump to make the versions in blead and CPAN

8 years agoDon’t use PL_op without checking it first.
Father Chrysostomos [Mon, 20 Sep 2010 07:44:15 +0000 (09:44 +0200)] 
Don’t use PL_op without checking it first.

8 years agofix typo in newSVpvn_flags() docs
David Mitchell [Sun, 19 Sep 2010 12:33:26 +0000 (13:33 +0100)] 
fix typo in newSVpvn_flags() docs

8 years agofix PL_psig_pend freeing
David Mitchell [Sun, 19 Sep 2010 12:11:54 +0000 (13:11 +0100)] 
fix PL_psig_pend freeing

Commit 31c91b4357905486e81f901ad079da5735bdb7ba added a block of code
to free PL_psig_pend in a signal-safe way, but omitted to remove the
original unsafe freeing code above it. Removed with this commit.

8 years ago[perl #40388] perl_destruct() leaks PL_main_cv
David Mitchell [Sun, 19 Sep 2010 11:49:07 +0000 (12:49 +0100)] 
[perl #40388] perl_destruct() leaks PL_main_cv

Well yes, it does, kinda; but it's harmless. Add a comment to that effect.

8 years ago[perl #40389] perl_destruct() leaks PL_defstash
David Mitchell [Sun, 19 Sep 2010 11:33:04 +0000 (12:33 +0100)] 
[perl #40389] perl_destruct() leaks PL_defstash

With PERL_DESTRUCT_LEVEL >= 1, PL_defstash is explicitly freed,
but doesn't actually get freed at that point due to a reference loop
between %:: and *::. Break that loop to ensure that PL_defstash gets freed
at that point. Actually, its not as serious as it sounds, as it would get
freed a bit later anyway by sv_clean_all(), but this new way has these

* it gets freed where you expect it to be
* it gets freed cleanly, rather than by the more brutal sv_clean_all()
  (which can leave dangling pointers to freed SVs)
* since its freed while *not* under the influence of
  PL_in_clean_all = TRUE, it's more likely to flag up bugs related to
  double-freeing etc. Indeed, the two previous commits to this are a
  result of that.

8 years agoPL_ofsgv is ref counted, so inc when duping
David Mitchell [Sun, 19 Sep 2010 11:14:45 +0000 (12:14 +0100)] 
PL_ofsgv is ref counted, so inc when duping

8 years agostop do_clean_named_objs() leaving dangling refs
David Mitchell [Sat, 18 Sep 2010 22:01:54 +0000 (23:01 +0100)] 
stop do_clean_named_objs() leaving dangling refs

Currently perl does 3 major scans of the SV arenas, so the action of
perl_destroy() is a bit like this:

    for (all arena SVs) {
if (its a ref to an object)
    undef the ref (and thus probably free the object)
    for (all arena SVs) {
if (it's a typeglob and at least one of its slots holds an object) {
   set SVf_BREAK on the gv
    return if $PERL_DESTRUCT_LEVEL < 1;
    PL_in_clean_all = 1

    for (all arena SVs) {
       set SVf_BREAK on the sv

The second scan is problematic, in that by randomly zapping GVs, it can
leave dangling pointers to freed GVs. This is while perl-level destructors
may still be called, meaning perl users can see corrupted state.
Note also that at this point PL_in_clean_all hasn't been set, so sv_free()
may put out 'Attempt to free unreferenced scalar' warnings.

This commit fixes this by only freeing the affected slots of the GV,
rather than freeing the GV itself. Thus makes it more like the first pass,
which undefs RVs, and ensures no dangling refs.

8 years agoAdd (?^...) regex construct
Karl Williamson [Thu, 19 Aug 2010 05:48:16 +0000 (23:48 -0600)] 
Add (?^...) regex construct

This adds (?^...) to signify to use the default regex modifiers for the
cluster or embedded pattern-match modifier change.  The major purpose of
this is to simplify regex stringification, so that "^" is output in
place of "-xism".  As a result, the stringification will not change in
the future when new regex modifiers are added, so tests, etc. that rely
on a particular stringification will have to change now, but never

Code that needs to work properly with both old- and new-style regexes
can use something like the following:

    # Accept both old and new-style stringification
    my $modifiers = (qr/foobar/ =~ /\Q(?^/) ? '^' : '-xism';

This construct is Ben Morrow's idea.

8 years agoregcomp.c: fix an improper indent
Karl Williamson [Thu, 19 Aug 2010 04:53:35 +0000 (22:53 -0600)] 
regcomp.c: fix an improper indent

8 years agoUpgade NEXT from version 0.64 to 0.65
Florian Ragwitz [Mon, 20 Sep 2010 02:03:12 +0000 (04:03 +0200)] 
Upgade NEXT from version 0.64 to 0.65

We can now set PERL_CORE again when running its tests.

8 years agoUpgrade PathTools from version 3.31_02 to 3.32
Florian Ragwitz [Mon, 20 Sep 2010 00:05:29 +0000 (02:05 +0200)] 
Upgrade PathTools from version 3.31_02 to 3.32

8 years agoModule::CoreList 2.39 is on CPAN now
Florian Ragwitz [Sun, 19 Sep 2010 23:27:54 +0000 (01:27 +0200)] 
Module::CoreList 2.39 is on CPAN now

8 years agoRemove unnecessary XS-APItest test boilerplate
Florian Ragwitz [Sun, 19 Sep 2010 19:03:34 +0000 (21:03 +0200)] 
Remove unnecessary XS-APItest test boilerplate

If perl was configured without XS/APItest as an extension, make test and make
test_harness won't even run the tests anyway. Also, XS-APItest only lives in the
core, so it's only ever going to be tested there, making conditional tests
depending on $] unnecessary.

8 years agoAdd tests for PL_peepp/PL_rpeepp
Florian Ragwitz [Mon, 13 Sep 2010 20:46:44 +0000 (22:46 +0200)] 
Add tests for PL_peepp/PL_rpeepp

8 years agoUpdate release manager's guide regarding perldelta
Steve Hay [Sun, 19 Sep 2010 22:37:18 +0000 (23:37 +0100)] 
Update release manager's guide regarding perldelta

8 years agoPrepare perldelta for Perl 5.13.6
Steve Hay [Sun, 19 Sep 2010 22:34:08 +0000 (23:34 +0100)] 
Prepare perldelta for Perl 5.13.6

8 years agoRemoved the superfluous META.yml from Module-CoreList
Chris 'BinGOs' Williams [Sun, 19 Sep 2010 22:09:40 +0000 (23:09 +0100)] 
Removed the superfluous META.yml from Module-CoreList

8 years agoUpdate Porting/epigraphs.pod for Perl 5.13.5
Steve Hay [Sun, 19 Sep 2010 21:55:51 +0000 (22:55 +0100)] 
Update Porting/epigraphs.pod for Perl 5.13.5

8 years agoRecord another known problem in perldelta v5.13.5
Steve Hay [Sun, 19 Sep 2010 20:01:49 +0000 (21:01 +0100)] 
Record another known problem in perldelta

Testers on IRC have also discovered that the upgrade to
ExtUtils-MakeMaker-6.57_05 has resulted in some Module-Install tests

8 years agoRecord a known problem in perldelta
Steve Hay [Sun, 19 Sep 2010 17:56:26 +0000 (18:56 +0100)] 
Record a known problem in perldelta

Testers on IRC have discovered that the upgrade to Encode-2.40 has resulted
in some libwww-perl tests failing

8 years agoDon't use wildcards in Porting/exec-bit.txt
Steve Hay [Sun, 19 Sep 2010 17:25:25 +0000 (18:25 +0100)] 
Don't use wildcards in Porting/exec-bit.txt

The *.SH wildcard wrongly matched *.sh files on Windows's case-insensitive
filesystem, leading to an exec bit getting set where it shouldn't have been

Thanks to rafl and vincent for spotting the problem and the cause

8 years agoFinal update to perldelta.pod for Perl 5.13.5
Steve Hay [Sun, 19 Sep 2010 16:04:39 +0000 (17:04 +0100)] 
Final update to perldelta.pod for Perl 5.13.5

8 years agoRecord Perl 5.13.5 in perlhist
Steve Hay [Sun, 19 Sep 2010 15:41:18 +0000 (16:41 +0100)] 
Record Perl 5.13.5 in perlhist

8 years agoUpdate Module::CoreList for Perl 5.13.5
Steve Hay [Sun, 19 Sep 2010 15:29:08 +0000 (16:29 +0100)] 
Update Module::CoreList for Perl 5.13.5

8 years agoUpdate Changes for 5.13.5
Steve Hay [Sun, 19 Sep 2010 14:31:48 +0000 (15:31 +0100)] 
Update Changes for 5.13.5

8 years agoBump version to 5.13.5
Steve Hay [Sun, 19 Sep 2010 14:21:29 +0000 (15:21 +0100)] 
Bump version to 5.13.5

8 years agoUpdate perldelta for 5.13.5
Steve Hay [Sun, 19 Sep 2010 12:31:11 +0000 (13:31 +0100)] 
Update perldelta for 5.13.5

Hopefully the last-but-one update

8 years agoBump VERSIONs in XS-APItest and XS-APItest-KeywordRPN
Steve Hay [Sun, 19 Sep 2010 12:29:35 +0000 (13:29 +0100)] 
Bump VERSIONs in XS-APItest and XS-APItest-KeywordRPN

Not strictly necessary for these modules since they don't get installed
anyway, but their XS files have been changed since 5.13.4

8 years agoBump VERSION in PerlIO-scalar
Steve Hay [Sun, 19 Sep 2010 12:28:26 +0000 (13:28 +0100)] 
Bump VERSION in PerlIO-scalar

The XS file has been changed since 5.13.4

8 years agoBump VERSION in threads-shared
Steve Hay [Sun, 19 Sep 2010 12:28:09 +0000 (13:28 +0100)] 
Bump VERSION in threads-shared

The XS file has been changed since 5.13.4

8 years agoUpdate perldelta for 5.13.5 tomorrow (err, later today)
Steve Hay [Sun, 19 Sep 2010 01:20:27 +0000 (02:20 +0100)] 
Update perldelta for 5.13.5 tomorrow (err, later today)

Not finished yet, but nearly there already thanks to the efforts of rafl
over the last month :-)

8 years agoFix Porting/ to work on Win32
Steve Hay [Sat, 18 Sep 2010 23:05:27 +0000 (00:05 +0100)] 
Fix Porting/ to work on Win32

8 years agoVarious perldelta tweaks
Florian Ragwitz [Sat, 18 Sep 2010 21:30:21 +0000 (23:30 +0200)] 
Various perldelta tweaks

Fixes some minor typos, and adds more links, mostly to

8 years agoperldelta recent module upgrades
Florian Ragwitz [Sat, 18 Sep 2010 21:17:55 +0000 (23:17 +0200)] 
perldelta recent module upgrades

8 years agoUpgrade Encode from 2.39 to 2.40
Steve Hay [Sat, 18 Sep 2010 20:29:05 +0000 (21:29 +0100)] 
Upgrade Encode from 2.39 to 2.40

8 years agoUpgrade B-Debug from 1.14 to 1.16
Steve Hay [Sat, 18 Sep 2010 20:10:42 +0000 (21:10 +0100)] 
Upgrade B-Debug from 1.14 to 1.16

8 years agoSilence compiler warnings
Steve Hay [Sat, 18 Sep 2010 16:02:07 +0000 (17:02 +0100)] 
Silence compiler warnings

8 years agoUpdate the perl distribution's abstract
Florian Ragwitz [Sat, 18 Sep 2010 01:51:33 +0000 (03:51 +0200)] 
Update the perl distribution's abstract

Commit d27f2b2f9d9e8675f5b63a1453279409ca22f8b6 changed the abstract in the main
pod file. This does the same thing for the abstract in META.yml.

Also update our no_index directories for some moved dual-life modules, while
we're at it.

8 years agoFix inconsistency in perlpod
Florian Ragwitz [Fri, 17 Sep 2010 22:29:08 +0000 (00:29 +0200)] 
Fix inconsistency in perlpod

8 years agoperldelta up to ebeb11a
Florian Ragwitz [Fri, 17 Sep 2010 20:31:54 +0000 (22:31 +0200)] 
perldelta up to ebeb11a

8 years ago* Fix 'a keys' question title in perlfaq4
brian d foy [Fri, 17 Sep 2010 16:03:30 +0000 (11:03 -0500)] 
* Fix 'a keys' question title in perlfaq4

8 years agoExplicitly disable unicode for non-unicode tests in t/op/warn.t
Tony Cook [Fri, 17 Sep 2010 09:46:10 +0000 (19:46 +1000)] 
Explicitly disable unicode for non-unicode tests in t/op/warn.t

These would fail when smokes tested under unicode locales.

8 years agoPATCH: perldelta entry for [\8] [perl #76840] fix.
Karl Williamson [Thu, 16 Sep 2010 19:26:07 +0000 (13:26 -0600)] 
PATCH: perldelta entry for [\8] [perl #76840] fix.

8 years agoreftype() used without checking for undef
Chas. Owens [Thu, 16 Sep 2010 14:59:30 +0000 (16:59 +0200)] 
reftype() used without checking for undef

Hash::Util used "reftype($v) eq 'HASH'" without checking for
undefinendness. This patch rectifies that. Also bumps Hash::Util

Original patch and detective work by Chas. Owens. Modified by Steffen

8 years agoBack out the mauve module and related changes
Florian Ragwitz [Sun, 5 Sep 2010 18:30:54 +0000 (20:30 +0200)] 
Back out the mauve module and related changes

It's was intended as a temporary namespace only, and we really don't want to
ship it in any release until we've figured out what it should really look like.

This reverts commit 05c0d6bbe3ec5cc9af99d105b8648ad02ed7cc95,
  "add sv_reftype_len() and make sv_reftype() be a wrapper for it"
commit 792477b9c2e4c75cb03d07bd6d25dc7e1fdf448e,
 "create the "mauve" temporary namespace for things like reftype"
commit 8df6b97c1de8326d50ac9c8cae4bf716393b45bb,
  "mauve.t needs access to %Config, make sure it's available"
commit cfe9162d0d593cd12a979c73df82c7509b324343,
 "use more efficient sv_reftype_len() interface"
and commit 47b13905e23c2a72acdde8bb4669e25e5eaefec4
  "add more tests to lib/mauve.t so it tests also that mauve::reftype can return "LVALUE""

There's a `mauve' branch still containing all the code for the temporary mauve
namespace. That should be used to work on it until it's mostly ready to be
released, and only then merged to blead. Alternatively, it should be deleted if
another way to provide mauve's features in the core is found.

8 years agoFix /[\8]/ to not match NULL; give correct warning
Karl Williamson [Sun, 18 Jul 2010 18:28:14 +0000 (12:28 -0600)] 
Fix /[\8]/ to not match NULL; give correct warning

8 and 9 are not treated as alphas in parsing as opposed to illegal

This also adds tests to verify that 1-3 digits work in char classes.

I created an isOCTAL macro in case that lookup gets moved to a bit
field, as I plan to do later, for speed.

8 years agoFix "Wide character in warn" warning
Father Chrysostomos [Thu, 16 Sep 2010 12:09:17 +0000 (14:09 +0200)] 
Fix "Wide character in warn" warning

8 years agoFix warn to respect utf8-encoded scalars [perl #45549]
Father Chrysostomos [Thu, 16 Sep 2010 12:07:50 +0000 (14:07 +0200)] 
Fix warn to respect utf8-encoded scalars [perl #45549]

8 years agochange warn.t to use
Father Chrysostomos [Thu, 16 Sep 2010 12:07:13 +0000 (14:07 +0200)] 
change warn.t to use

8 years agoAdd info regarding AIX 7.1
Rainer Tammer [Thu, 16 Sep 2010 07:22:52 +0000 (09:22 +0200)] 
Add info regarding AIX 7.1

8 years agoadd hv_copy_hints_hv and save_hints to the API
Zefram [Tue, 14 Sep 2010 23:21:16 +0000 (00:21 +0100)] 
add hv_copy_hints_hv and save_hints to the API

8 years ago'make regen' really shouldn't be special
Jim Cromie [Thu, 17 Jun 2010 02:38:12 +0000 (20:38 -0600)] 
'make regen' really shouldn't be special

Revert 'make regen' special case advice of
94e892a68016a417b1b324213d39309b8b744d0e, leave the minor whitespace cleanup.

8 years agoFix a pod link I broke
Florian Ragwitz [Wed, 15 Sep 2010 23:45:52 +0000 (01:45 +0200)] 
Fix a pod link I broke


8 years is upstream blead
Florian Ragwitz [Wed, 15 Sep 2010 23:25:06 +0000 (01:25 +0200)] is upstream blead

8 years agoCPAN is UPSTREAM for Digest and Digest-MD5
Gisle Aas [Wed, 15 Sep 2010 18:01:02 +0000 (20:01 +0200)] 
CPAN is UPSTREAM for Digest and Digest-MD5

8 years agoAdd Rob to AUTHORS
Florian Ragwitz [Wed, 15 Sep 2010 17:45:29 +0000 (19:45 +0200)] 
Add Rob to AUTHORS

8 years agoUpdate AUTOLOAD section in perlsub
Rob Hoelz [Mon, 13 Sep 2010 16:44:57 +0000 (11:44 -0500)] 
Update AUTOLOAD section in perlsub

AUTOLOAD documentation didn't mention that if AUTOLOAD is implemented
as an XSUB, $AUTOLOAD is not populated.

8 years agoperlunicode.pod: Clarify user-defined casing.
Karl Williamson [Wed, 15 Sep 2010 16:49:30 +0000 (10:49 -0600)] 
perlunicode.pod: Clarify user-defined casing.

I ran some experiments and found out that the user-defined casing worked
in ways that were surprises to me. And thus, this brutally lays out its

8 years agoPATCH: regex longjmp flaws
Karl Williamson [Wed, 15 Sep 2010 16:39:34 +0000 (10:39 -0600)] 
PATCH: regex longjmp flaws

The netbsd - 5.0.2 compiler pointed out that the recent changes to add
longjmps to speed up some regex compilations can result in clobbering a
few values.  These depend on the compiled code, and so didn't show up in
other compiler's warnings.  This patch reinitializes them after a

8 years agoAdd new_ok() to create and test objects. From Test::More.
Michael G. Schwern [Tue, 14 Sep 2010 02:14:54 +0000 (19:14 -0700)] 
Add new_ok() to create and test objects. From Test::More.

8 years agoAdd note() to put informational notes into the TAP (from Test::More)
Michael G. Schwern [Tue, 14 Sep 2010 02:14:30 +0000 (19:14 -0700)] 
Add note() to put informational notes into the TAP (from Test::More)

8 years agoAdd done_testing from Test::More
Michael G. Schwern [Tue, 14 Sep 2010 02:14:04 +0000 (19:14 -0700)] 
Add done_testing from Test::More