This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl5.git
11 years agoEliminate duplication.
James E Keenan [Fri, 15 Mar 2013 22:36:39 +0000 (18:36 -0400)]
Eliminate duplication.

11 years agotoke.c, S_scan_ident: Ignore whitespace on both sides of ${ ... }
Brian Fraser [Fri, 15 Mar 2013 00:05:23 +0000 (21:05 -0300)]
toke.c, S_scan_ident: Ignore whitespace on both sides of ${ ... }

${ var } (and ${ \7LOBAL_PHASE}) were broken by 32833930e. However,
it turns out that the behavior prior to that commit was already
strange:

${ .};              # Legal
${. };              # Illegal
${ . };             # Illegal
${  \7LOBAL_PHASE}; # Legal
${  ^GLOBAL_PHASE}; # Illegal
${^GLOBAL_PHASE };  # Illegal

This commit restores ${ var } and makes all of the above work by
always ignoring spaces on both sides of ${ ... }.

11 years agoUpgrade to Net::Ping 2.40. This should silence much of the black
Steve Peters [Fri, 15 Mar 2013 18:38:44 +0000 (13:38 -0500)]
Upgrade to Net::Ping 2.40.  This should silence much of the black
smoke seen on Windows and Cygwin coming from Net::Ping.

11 years agoData-Dumper on CPAN is sync'd with blead
Chris 'BinGOs' Williams [Fri, 15 Mar 2013 10:57:04 +0000 (10:57 +0000)]
Data-Dumper on CPAN is sync'd with blead

11 years agoData::Dumper version bump and changelog for release
Steffen Mueller [Fri, 15 Mar 2013 09:29:37 +0000 (10:29 +0100)]
Data::Dumper version bump and changelog for release

11 years agoData::Dumper test compatibility fixes for older Perls
Steffen Mueller [Fri, 15 Mar 2013 09:28:30 +0000 (10:28 +0100)]
Data::Dumper test compatibility fixes for older Perls

Ported from Jim Keenan's changes in the DD github repository.

11 years agoAdd security warning about eval'ing DD output
Steffen Mueller [Fri, 15 Mar 2013 09:21:12 +0000 (10:21 +0100)]
Add security warning about eval'ing DD output

As if it isn't obvious, but, well, people do it.

11 years agoUpdate File-Temp to CPAN version 0.23
Chris 'BinGOs' Williams [Thu, 14 Mar 2013 22:34:36 +0000 (22:34 +0000)]
Update File-Temp to CPAN version 0.23

  [DELTA]

  ---- Release V0.23 CPAN ----

  * Build.PL: Use Module::Build

  * Temp.pm: internally holds absolute path for cleanup (Fixes RT #44924)

  * t/rmtree.t: (new) Test temp dir removal explicitly.

  * t/tempfile.t: Correctly tests directory removal from chdir.

  * Temp.pm: Clean up temp directory on exit even if it is the
  current directory. Patch supplied by Ed Avis and fixes RT #45246.

  * Temp.pm: Defer unlinking tempfiles if initial unlink fails
  instad of croaking; fixes problems on NFS (RT #82720)

  * Temp.pm: Allow leading template to new() for consistency with
  newdir()

  * Temp.pm: Calling tempfile or tempdir as a class method now
  produce a more useful fatal error message

  * Temp.pm: new/newdir/tempfile/tempdir now all allow either
  a leading template argument or a TEMPLATE option

  * Temp.pm: Overload numify with refaddr() in same manner as IO::File
  (closes RT #47397 from Kevin Ryde)

11 years agoAllow Data::Dumper to work on older Perls
Karl Williamson [Fri, 8 Mar 2013 17:01:45 +0000 (10:01 -0700)]
Allow Data::Dumper to work on older Perls

Commit 0eb30aebe20a48d634d4e484bc9e6005dffc1420 changed D:D to use the
macro isWORDCHAR instead of isALNUM.  The problem is that this macro is
not defined in older Perls.  This new commit defines isWORDCHAR to be
isALNUM when it isn't already defined, thus avoiding the problem.

Signed-off-by: David Golden <dagolden@cpan.org>
11 years agoMaintainers.pl needs sync for Net-Ping
Chris 'BinGOs' Williams [Thu, 14 Mar 2013 09:36:01 +0000 (09:36 +0000)]
Maintainers.pl needs sync for Net-Ping

11 years agoApply two POD corrections supplied by SHIRAKATA Kentaro++.
James E Keenan [Thu, 14 Mar 2013 02:03:25 +0000 (22:03 -0400)]
Apply two POD corrections supplied by SHIRAKATA Kentaro++.

For: RT #117153 and #117155.

11 years agoRemoved needless comment in for.t
Charlie Gonzalez [Wed, 13 Mar 2013 04:19:06 +0000 (00:19 -0400)]
Removed needless comment in for.t

11 years agoMoved t/cmd/lexsub.t, t/cmd/while.t to t/op; split t/cmd/for.t to two pieces, one...
James E Keenan [Wed, 6 Mar 2013 03:37:48 +0000 (22:37 -0500)]
Moved t/cmd/lexsub.t, t/cmd/while.t to t/op; split t/cmd/for.t to two pieces, one in t/op/for.t. Update and sort MANIFEST.

From work done at NY Perl Hackathon by Charlie Gonzalez and Taqqai Karim.

For: RT #116615

11 years agoUpdate Net-Ping to 2.39.
Steve Peters [Thu, 14 Mar 2013 01:28:11 +0000 (20:28 -0500)]
Update Net-Ping to 2.39.

11 years agoCPAN Module-CoreList be 2.84
Chris 'BinGOs' Williams [Wed, 13 Mar 2013 17:00:32 +0000 (17:00 +0000)]
CPAN Module-CoreList be 2.84

11 years agoUpdate JSON-PP to CPAN version 2.27202
Chris 'BinGOs' Williams [Wed, 13 Mar 2013 16:51:16 +0000 (16:51 +0000)]
Update JSON-PP to CPAN version 2.27202

  [DELTA]

  2.27202  Wed Mar 13 15:41:22 2013
    - license in Makefile.PL was missing

  2.27201  Wed Mar 13 13:22:33 2013
    - occasionally failed in t/019_incr.t in Perl 5.17.6 or more
          (because of hash iterator randomization)
          reported and patched by demerphq
          https://rt.cpan.org/Public/Bug/Display.html?id=83421

11 years agomake the recent changes to makedepend more portable
Tony Cook [Wed, 13 Mar 2013 12:54:19 +0000 (23:54 +1100)]
make the recent changes to makedepend more portable

Solaris complained about the length of the label and produced broken
dependencies.  This caused -Dusedtrace builds to fail since
perldtrace.h wasn't being built.

11 years agorestore building perl5**.dll and perl.exe on WinCE
Daniel Dragan [Wed, 30 Jan 2013 23:44:50 +0000 (18:44 -0500)]
restore building perl5**.dll and perl.exe on WinCE

extension building problems remain but the 2 above files will build be
built for WinCE with the following 3 commands, replace the folder name with
what you selected for $(MACHINE) in makefile.ce

nmake all
nmake -f makefile.ce wince-x86-hpc-wce300\perl517.dll
nmake -f makefile.ce wince-x86-hpc-wce300\perl.exe

makefile.ce:
- -debug:full and -pdb:none are obsolete compiler flags,
  and add -opt:ref:icf, to sync eVC makefile with modern VC's makefile
- create a shortcut for easily creating preprocessed (.i) files for
  debugging on the command line
- add new interp .c files that were added over the years
- the Dynaloader build process for Win32 was drastically changed in
  commit 281da5eaa8 , fix to reflect this, a "nmake all" on the Win32 build
  will create the correct dynaloader .c files for the ce makefile to use
  later
- nothing depended on .\xconfig.h in the ce makefile, so there was an error
  that it was missing, fix that
- rebase the CE perl5**.dll to same as on Win32 makefile, makes
  debugging/diassembly much easier when the dll is not relocated at runtime
- config.sh seems to be a win32 build file, while the script configpm
  wants a .sh file in \Cross, so change config.sh dependency to that

win32/Makefile:
- add a preprocess target to easily create .i files for debugging by hand

makedef.pl:
- read the comments in the script
- config.h is Win32 file, not a WinCE file, so use xconfig.h when
  under WinCE

lib/.gitignore
- Cross.pm is made during the build process, it shouldn't ever be commited

win32/.gitignore
- xconfig.h is made during the build process, it shouldn't ever be commited

win32/wince.c
- identifier isnan is defed to _isnan somewhere, this created an infinite
  loop when CE perl was run

11 years agotime64.c utf8.c fix for WinCE
Daniel Dragan [Wed, 30 Jan 2013 23:20:25 +0000 (18:20 -0500)]
time64.c utf8.c fix for WinCE

copy from VC build config_H.vc to eVC build config_H.ce, this is not the
correct way to fix config_H.ce, but nobody has responded on how to
automatically regenerate config_H.ce in
http://www.nntp.perl.org/group/perl.perl5.porters/2013/01/msg197853.html

11 years agoFix some ASAN-identified problems
George Greer [Tue, 12 Mar 2013 03:39:13 +0000 (21:39 -0600)]
Fix some ASAN-identified problems

Clang under Address sanitizer is showing several problems when building
Perl, having to do when a limit reaches I32_MAX.  This commit fixes
those problems by doing special tests for I32_MAX, and preventing
overflow.

11 years agoperlsyn.pod: Nit
Shirakata Kentaro [Tue, 12 Mar 2013 19:16:14 +0000 (13:16 -0600)]
perlsyn.pod: Nit

11 years agoChange preferred email for Shirakata Kentaro
Karl Williamson [Tue, 12 Mar 2013 19:14:33 +0000 (13:14 -0600)]
Change preferred email for Shirakata Kentaro

11 years agoPorting/checkAUTHORS.pl: Clarify comment
Karl Williamson [Tue, 12 Mar 2013 19:13:58 +0000 (13:13 -0600)]
Porting/checkAUTHORS.pl: Clarify comment

11 years agoFix Peek.t under PERL_OLD_COPY_ON_WRITE
David Mitchell [Tue, 12 Mar 2013 16:52:47 +0000 (16:52 +0000)]
Fix Peek.t under PERL_OLD_COPY_ON_WRITE

under the old COW, the IV slot of non-IOK PVPVs was used for COW
purposes, So don't assume its zero.

11 years agopp_entersub optimization
Salvador Fandino [Tue, 12 Mar 2013 14:04:35 +0000 (14:04 +0000)]
pp_entersub optimization

There is code in pp_entersub() that specifically handles the case where
AvARRAY(@_) != AvALLOC(@_), and tries to be more efficient than just
realloc()ing AvALLOC().

However, @_'s that have been shifted or messed with are usually cleaned up
or abandoned by CLEAR_ARGARRAY/POPSUB anyway, so this code is (probably)
never called.  So remove it.
In a worst case, it would just mean that realloc() is called
unnecessarily, which would be slower, but still correct.

11 years ago[perl #117095] state var init getting skipped
David Mitchell [Tue, 12 Mar 2013 13:23:46 +0000 (13:23 +0000)]
[perl #117095] state var init getting skipped

Add test case for this bug, which was actually fixed 6 months ago with
ad9e6ae10fb581c6c053b862286f8e187063c3ab.

11 years agofix year of 5.16.3 in perlhist
Ricardo Signes [Tue, 12 Mar 2013 12:26:07 +0000 (08:26 -0400)]
fix year of 5.16.3 in perlhist

11 years agoEBCDIC has the Unicode bug too
Karl Williamson [Tue, 12 Mar 2013 03:13:38 +0000 (21:13 -0600)]
EBCDIC has the Unicode bug too

We have not had a working modern Perl on EBCDIC for some years.  When I
started out, comments and code led me to conclude erroneously that
natively it supported semantics for all 256 characters 0-255.  It turns
out that I was wrong; it natively (at least on some platforms) has the
same rules (essentially none) for the characters which don't correspond
to ASCII onees, as the rules for these on ASCII platforms.

This commit is documentation only, mostly just removing the special
mentions of EBCDIC.

11 years agoadd 5.16.3 to blead:pod/perlhist.pod
Ricardo Signes [Mon, 11 Mar 2013 23:09:04 +0000 (19:09 -0400)]
add 5.16.3 to blead:pod/perlhist.pod

11 years agoadd perl5163delta.pod to blead
Ricardo Signes [Mon, 11 Mar 2013 23:07:45 +0000 (19:07 -0400)]
add perl5163delta.pod to blead

11 years agoadd the 5.16.3 epigraph, link to 5.14.4 announcement
Ricardo Signes [Mon, 11 Mar 2013 22:58:45 +0000 (18:58 -0400)]
add the 5.16.3 epigraph, link to 5.14.4 announcement

11 years agoSync Module-CoreList and version in Maintainers.pl
Chris 'BinGOs' Williams [Mon, 11 Mar 2013 20:44:30 +0000 (20:44 +0000)]
Sync Module-CoreList and version in Maintainers.pl

11 years agocorelist --feature is actually on available >= v5.16.0
Chris 'BinGOs' Williams [Mon, 11 Mar 2013 19:04:52 +0000 (19:04 +0000)]
corelist --feature is actually on available >= v5.16.0

11 years agoperlapi: Nits
Karl Williamson [Mon, 11 Mar 2013 17:45:09 +0000 (11:45 -0600)]
perlapi: Nits

11 years agoUpdate Module-CoreList for v5.16.3
Chris 'BinGOs' Williams [Mon, 11 Mar 2013 16:42:10 +0000 (16:42 +0000)]
Update Module-CoreList for v5.16.3

11 years agofix typo in epigraphs.pod
David Mitchell [Mon, 11 Mar 2013 11:13:53 +0000 (11:13 +0000)]
fix typo in epigraphs.pod

11 years agoadd 5.14.4 to perlhist
David Mitchell [Mon, 11 Mar 2013 10:45:15 +0000 (10:45 +0000)]
add 5.14.4 to perlhist

11 years agoadd perl5144delta
David Mitchell [Mon, 11 Mar 2013 01:13:49 +0000 (01:13 +0000)]
add perl5144delta

11 years agoFinalise Module-CoreList for v5.14.4
Chris 'BinGOs' Williams [Mon, 11 Mar 2013 00:26:53 +0000 (00:26 +0000)]
Finalise Module-CoreList for v5.14.4

11 years agoUpdate Module-CoreList with v5.14.4 data
Chris 'BinGOs' Williams [Mon, 11 Mar 2013 00:18:55 +0000 (00:18 +0000)]
Update Module-CoreList with v5.14.4 data

11 years agoAdd the 5.14.4 epigraph to epigraphs.pod
David Mitchell [Mon, 11 Mar 2013 00:15:20 +0000 (00:15 +0000)]
Add the 5.14.4 epigraph to epigraphs.pod

11 years agoCorrect version data for Module::CoreList in 5.16.2
Dominic Hargreaves [Sun, 10 Mar 2013 23:35:55 +0000 (23:35 +0000)]
Correct version data for Module::CoreList in 5.16.2

11 years agoUpdate Digest-SHA to CPAN version 5.84
Chris 'BinGOs' Williams [Sun, 10 Mar 2013 20:29:12 +0000 (20:29 +0000)]
Update Digest-SHA to CPAN version 5.84

  [DELTA]

  5.84  Sat Mar  9 17:36:08 MST 2013
    - untweaked Makefile.PL to remove dependencies of SHA.c
        -- dependencies were breaking builds on VMS
        -- retaining dependencies provides too little benefit
            for cost of portable workaround

11 years agoreorder intrpvar.h
David Mitchell [Sat, 9 Mar 2013 23:36:16 +0000 (23:36 +0000)]
reorder intrpvar.h

Move more of the more commonly-used PL_ variables towards the front of the
file (and thus to the top of the interpreter struct on MULTIPLICITY
builds).

This helps ensure that "hot" variables are clustered together on the same
small number of cache lines, and also that the machine code to load them
will have shorter offsets, which on some architectures may be achieved
with shorter instructions.

The "hotness" has been determined purely by my subjective judgement rather
than any profiling. It's still open for the later to be done.

(Only simple shunting of whole lines has been done; no changes have been
made to individual lines.)

11 years agoPATCH: [perl #117101] toke.c: Make \$$1 work again.
Brian Fraser [Sat, 9 Mar 2013 22:36:34 +0000 (15:36 -0700)]
PATCH: [perl #117101] toke.c: Make \$$1 work again.

Commit 3283393 replaced the use of isWORDCHAR (\p{Word}) in scan_ident
with isIDFIRST (\p{XIDS}). Generally this was not troublesome, since
there are other places that deal with variables matching \d, but
one use of isWORDCHAR had given digit variables an unintended special
case:
$$1 meant ${$1}, whereas $$@ or $$* were syntax errors.

This commit restores the special case for \p{POSIX_Digit} variables.

11 years agoBump version of Term::ReadLine
Karl Williamson [Sat, 9 Mar 2013 20:35:13 +0000 (13:35 -0700)]
Bump version of Term::ReadLine

commit 20a5039af69d81e9003664af771f2dd5e0446c2b changed this module's
pod but  didn't bump the version.

11 years agoGet Configure in sync with metaconfig
H.Merijn Brand [Sat, 9 Mar 2013 19:44:31 +0000 (20:44 +0100)]
Get Configure in sync with metaconfig

11 years agoAdd bootstrap_charset/BOOTSTRAP_CHARSET for non-ASCII architectures
H.Merijn Brand [Sat, 9 Mar 2013 19:04:50 +0000 (20:04 +0100)]
Add bootstrap_charset/BOOTSTRAP_CHARSET for non-ASCII architectures

11 years agoStandardize spelling of 'supersede' throughout the distribution.
James E Keenan [Sat, 9 Mar 2013 01:09:01 +0000 (20:09 -0500)]
Standardize spelling of 'supersede' throughout the distribution.

Change two instances of 'supercede' to match many more instances of the
former.

11 years agoperlebcdic.pod: Document 2 fcns; nits
Karl Williamson [Fri, 8 Mar 2013 19:08:17 +0000 (12:08 -0700)]
perlebcdic.pod: Document 2 fcns; nits

The functions to convert code points from/to native were not previously
documented.  This also fixes some heading issues.

11 years agoMinor corrections to descriptions of files in Porting/.
Andy Dougherty [Fri, 8 Mar 2013 18:13:04 +0000 (13:13 -0500)]
Minor corrections to descriptions of files in Porting/.

Try to explain a little more how the metaconfig information
is intended to be used.

11 years agoregen/unicode_constants.pl: Change #define name
Karl Williamson [Sun, 3 Mar 2013 03:53:04 +0000 (20:53 -0700)]
regen/unicode_constants.pl: Change #define name

This was added in the 5.17 series so there's no code relying on its
current name.  I think that the abbreviation is clearer.

11 years agoregen/unicode_constants.pl: Make portable to non-ASCII
Karl Williamson [Sun, 3 Mar 2013 03:43:56 +0000 (20:43 -0700)]
regen/unicode_constants.pl: Make portable to non-ASCII

This now uses the U+ notation to indicate code points, which is
unambiguous not matter what the platform's character set is.  (charnames
accepts the U+ notation)

11 years agoregen/unicode_constants.pl: Remove unused constant
Karl Williamson [Sun, 3 Mar 2013 03:29:33 +0000 (20:29 -0700)]
regen/unicode_constants.pl: Remove unused constant

This was added in the 5.17 series, so can't be yet in the field; and
isn't needed.

11 years agoregen/unicode_constants.pl: Pass through input comments
Karl Williamson [Sun, 3 Mar 2013 02:28:43 +0000 (19:28 -0700)]
regen/unicode_constants.pl: Pass through input comments

The data can now have comments, which are converted to C and passed
through

11 years agoregen/unicode_constants.pl: Convert '-' in names to '_'
Karl Williamson [Sun, 3 Mar 2013 02:19:02 +0000 (19:19 -0700)]
regen/unicode_constants.pl: Convert '-' in names to '_'

Unicode character names can have dashes in them.  These aren't accepted
in C macro names.  Change so both blanks and the hyphen-minus are
converted to underscores.

11 years agoSkip io/eintr.t on QNX Neutrino too
Chris 'BinGOs' Williams [Thu, 7 Mar 2013 23:52:21 +0000 (23:52 +0000)]
Skip io/eintr.t on QNX Neutrino too

11 years agoUpdate perlfaq to CPAN version 5.0150042
Chris 'BinGOs' Williams [Thu, 7 Mar 2013 19:31:01 +0000 (19:31 +0000)]
Update perlfaq to CPAN version 5.0150042

  [DELTA]

  5.0150042 Wed  6 Mar 2013 14:37:08 +0100
    * Fix dodgy link as reports in #114260 of cpan RT (ranguard)
    * Hex typo (Martin Becker)
    * Typo (joaquinferrero)

11 years agoBring core up to version-0.9902
John Peacock [Thu, 7 Mar 2013 00:22:26 +0000 (19:22 -0500)]
Bring core up to version-0.9902

The attached patch bring the core Perl version code (including a fairly
significant leak when run in a tight loop) up to parity with CPAN
0.9902.  This deals with all open issues except:

   https://rt.cpan.org/Ticket/Display.html?id=81294

which I am having a hard time modeling.

John

Signed-off-by: Chris 'BinGOs' Williams <chris@bingosnet.co.uk>
11 years agot/lib/common.pl should use absolute paths in @INC
Nicholas Clark [Wed, 6 Mar 2013 11:40:01 +0000 (12:40 +0100)]
t/lib/common.pl should use absolute paths in @INC

t/lib/common.pl needs to run test files within a subdirectory, and hence
needs change directory into it. Changing a directory poses a problem when
running the tests, because @INC is typically '../lib'. The fix for this had
been to prepend '../../lib' to @INC, which is the correct relative path
while in the subdirectory.

However, the END block changes directory upwards (so that it can delete the
temporary directory), and in the process of deletion may end up lazy-loading
more modules. This will end up searching in ../lib first (ie outside the
build directory), which is wrong, and will cause problems if a directory lib/
exists up one level with files of the expected names (eg a lib/ directory
from a different version of Perl).

Problem identified and diagnosed by Daniel Dragan in RT #116971.

11 years agoPortability fix for new Digest::SHA Makefile.PL.
Craig A. Berry [Thu, 7 Mar 2013 04:01:24 +0000 (22:01 -0600)]
Portability fix for new Digest::SHA Makefile.PL.

Non-native file specifications don't play nice with native make
utilities.

Without this, the build on VMS is broken.  Submitted upstream at:

https://rt.cpan.org/Ticket/Display.html?id=83800

11 years agoFix POD formatting error.
James E Keenan [Thu, 7 Mar 2013 02:49:01 +0000 (21:49 -0500)]
Fix POD formatting error.

11 years agoAdd a README outlining contents of Porting directory.
James E Keenan [Thu, 7 Mar 2013 02:02:34 +0000 (21:02 -0500)]
Add a README outlining contents of Porting directory.

For: RT #116477

11 years agoopen FOO || die; doesn't need a special identifier parser.
Brian Fraser [Tue, 5 Mar 2013 23:40:34 +0000 (20:40 -0300)]
open FOO || die; doesn't need a special identifier parser.

Turns out this can just use scan_word().

11 years agoRestrict the valid identifier syntax, fix some identifier bugs.
Brian Fraser [Tue, 5 Mar 2013 21:18:49 +0000 (18:18 -0300)]
Restrict the valid identifier syntax, fix some identifier bugs.

Fixes:
    * Length-one identifiers are now restricted to
        [\p{XIDS}\p{POSIX_Punct}\p{POSIX_Digit}\p{POSIX_Cntrl}]
      plus, if under 'no utf8', the 128 non-ASCII characters in the
      Latin1 range.
    * Identifiers that start with ASCII letters can be followed with
      XIDC characters

(The committer made some small edits in the pod)

11 years agoFix several differences in the parsing of $.. and ${...}
Brian Fraser [Tue, 5 Mar 2013 20:46:52 +0000 (17:46 -0300)]
Fix several differences in the parsing of $.. and ${...}

Namely:
    * The first character in ${...} used to have no restrictions
    * ${foo:bar} used to be legal
    * ${foo::bar} worked, but ${foo'bar} didn't

And possibly other subtle, so far undiscovered bugs. This was
resolved by simply using the same code for both things.

Note that this commit is not entirely useful on its own; While
tests pass, it requires changes from the following commit to work
entirely.

11 years ago(UN)LIKELY branch prediction hints in a few strategic places
Steffen Mueller [Wed, 6 Mar 2013 19:39:43 +0000 (20:39 +0100)]
(UN)LIKELY branch prediction hints in a few strategic places

This adds branch prediction hints to a few strategic places such as
growing stack or strings, some exception handling, and a few hot
functions such as sv_upgrade.

This is not exhaustive by any means.

11 years agoExtremely minor pp_goto optimization
Steffen Mueller [Wed, 6 Mar 2013 17:42:17 +0000 (18:42 +0100)]
Extremely minor pp_goto optimization

Makes use of the fact that the exception case is both rare and okay to
be penalized (a tiny bit) instead of the common case doing an extra
branch.

11 years agoPL_sv_objcount deprecation notice
Steffen Mueller [Thu, 28 Feb 2013 17:25:19 +0000 (18:25 +0100)]
PL_sv_objcount deprecation notice

11 years agoPrepare PL_sv_objcount removal
Steffen Mueller [Thu, 28 Feb 2013 17:23:32 +0000 (18:23 +0100)]
Prepare PL_sv_objcount removal

This used to keep track of all objects. At least by now, that is
for no particularly good reason. Just because it could avoid a
bit of work during global destruction if no objects remained.
Let's do less work at run-time instead.

The interpreter global will remain for one deprecation cycle.

11 years agobetter POD for SvPVX, pre-5.9.3 Perls
Daniel Dragan [Wed, 6 Mar 2013 03:51:01 +0000 (22:51 -0500)]
better POD for SvPVX, pre-5.9.3 Perls

PV/char * was moved to SV head in commit 7b2c381cf3 . Prior to this, PV
was in SV body, and sv_any can be NULL, so accessing SvPVX without
checking type on old Perls was a SEGV. Make a note of this so others
don't find out the hard way.

11 years agoSet PL_stderrgv to NULL if it is freed.
Nicholas Clark [Thu, 28 Feb 2013 14:12:47 +0000 (15:12 +0100)]
Set PL_stderrgv to NULL if it is freed.

Without this, it's possible to hit assertion failures when global destruction
attempts to skip the PVIO for PL_stderrgv while cleaning up all objects.

11 years agoUpdate Digest-SHA to CPAN version 5.83
Chris 'BinGOs' Williams [Tue, 5 Mar 2013 14:49:52 +0000 (14:49 +0000)]
Update Digest-SHA to CPAN version 5.83

  [DELTA]

  5.83  Mon Mar  4 08:12:00 MST 2013
    - removed code for standalone C operation (no longer used)
        -- eliminates need for external symbols
        -- consolidates SHA and HMAC code
        -- reduces size of object files
        -- thanks to Marc Lehmann for suggestions
    - tweaked Makefile.PL to show dependencies of SHA.c

11 years agoBump File::Copy version as the contents have changed
Chris 'BinGOs' Williams [Tue, 5 Mar 2013 11:57:20 +0000 (11:57 +0000)]
Bump File::Copy version as the contents have changed

11 years agoUpdate Encode to CPAN version 2.49
Chris 'BinGOs' Williams [Tue, 5 Mar 2013 11:45:09 +0000 (11:45 +0000)]
Update Encode to CPAN version 2.49

  [DELTA]

  $Revision: 2.49 $ $Date: 2013/03/05 03:12:49 $
  ! Encode.xs
    Addressed: Encoding objects leak memory if decoding fails
    https://github.com/dankogai/p5-encode/issues/8

11 years agoAdd Jasmine Ahuja to AUTHORS.
James E Keenan [Tue, 5 Mar 2013 00:34:28 +0000 (19:34 -0500)]
Add Jasmine Ahuja to AUTHORS.

11 years agoAdded descriptions to tests lacking them
Jasmine Ahuja [Mon, 4 Mar 2013 03:36:24 +0000 (22:36 -0500)]
Added descriptions to tests lacking them

For:  RT #117011

11 years agofix pod: add missing 'C' of inline code tags
reneeb [Mon, 4 Mar 2013 07:19:13 +0000 (08:19 +0100)]
fix pod: add missing 'C' of inline code tags

11 years agoPorting/corelist.pl: fix a die error message
David Mitchell [Mon, 4 Mar 2013 01:00:05 +0000 (01:00 +0000)]
Porting/corelist.pl: fix a die error message

One particular die() just printed a filename, without saying what was
wrong with it. Which was a bit confusing.

11 years agorelease_managers_guide: clarify YAML regeneration
David Mitchell [Mon, 4 Mar 2013 00:58:39 +0000 (00:58 +0000)]
release_managers_guide: clarify YAML regeneration

Make it clear that you use the current perl, not a system perl,
and that the result may not have any changes.

11 years agorun regen_perly
David Mitchell [Sun, 3 Mar 2013 21:47:50 +0000 (21:47 +0000)]
run regen_perly

this is needed due to the change to regen_perly.pl. Otherwise
regen.t starts complaining. The actual diff is just noise.

11 years agoAdd return statements where missing in doio.c IPC functions.
Craig A. Berry [Sun, 3 Mar 2013 02:07:51 +0000 (20:07 -0600)]
Add return statements where missing in doio.c IPC functions.

These are code paths not seen on platforms that have msg* and
shm* functions, and of course we're croaking before returning
so returning is pointless, but the VMS C compiler insists that
we have return statments for non-void functions anyway, and
that compiler now sees these functions since enabling sem*.

11 years agoAdd NY Perl Hackathon participant to AUTHORS.
James E Keenan [Sun, 3 Mar 2013 19:32:13 +0000 (14:32 -0500)]
Add NY Perl Hackathon participant to AUTHORS.

11 years agoAdded descriptions to tests lacking them.
Andrew Tam [Sat, 2 Mar 2013 21:13:48 +0000 (16:13 -0500)]
Added descriptions to tests lacking them.

11 years agoupdate regen_perly.pl to recognise bison 2.7
Ruslan Zakirov [Sun, 3 Mar 2013 08:46:08 +0000 (12:46 +0400)]
update regen_perly.pl to recognise bison 2.7

11 years agoensure PL_sawampersand is exported.
David Mitchell [Sun, 3 Mar 2013 18:30:40 +0000 (18:30 +0000)]
ensure PL_sawampersand is exported.

Commit 1a904fc88069e249a4bd0ef196a3f1a7f549e0fe disabled
PL_sawampersand by default, since it was redundant with COW enabled.
However the mechanism to optionally re-enable it (PERL_SAWAMPERSAND)
didn't actually export the var, due to a typo.

With the new default of disabling COW but enabling PL_sawampersand,
this broke perl on builds where exports matters (and broke linux in
non-threaded builds, where porting/globvar.t detects this).

11 years agoConfigure: bail out when neither stdarg.h nor varargs.h
Aaron Crane [Mon, 4 Feb 2013 17:14:20 +0000 (17:14 +0000)]
Configure: bail out when neither stdarg.h nor varargs.h

Perl uses variadic functions, so we need at least one of the relevant
mechanisms available; for this reason, the CompCert C compiler is unsuitable
for our purposes.

If the person building Perl wants to carry on regardless, they can use the
"-K" option.

This partly addresses RT#112494.

11 years agoUpdate IPC-Cmd to CPAN version 0.80
Chris 'BinGOs' Williams [Sun, 3 Mar 2013 09:18:12 +0000 (09:18 +0000)]
Update IPC-Cmd to CPAN version 0.80

  [DELTA]

  Changes for 0.80    Sat Mar  2 22:03:49 GMT 2013
  =================================================
  * Use File::Spec->path instead of relying on
    Config (William Orr)

11 years agofixed minor typo in delta
H.Merijn Brand [Sun, 3 Mar 2013 08:34:17 +0000 (09:34 +0100)]
fixed minor typo in delta

11 years agodeparse.t: mask STDERR noise on lex sub TODO test
David Mitchell [Sun, 3 Mar 2013 00:57:07 +0000 (00:57 +0000)]
deparse.t: mask STDERR noise on lex sub TODO test

A Deparse TODO test which tries to deparse lexical subs, produce a bunch of
"unexpected OP_CLONE" etc on STDERR (since it doesn't handle those new ops
yet). Capture and skip those warnings for now.

Also, add 'no warnings "experimental::lexical_subs"'
to stop a warning about using an experimental feature.

11 years agoStop SEGV on 'our sub { syntax error }'
Peter Martini [Sun, 3 Mar 2013 00:09:58 +0000 (00:09 +0000)]
Stop SEGV on 'our sub { syntax error }'

Fix for RT #116981. If a sub is declared with our, the name is added
to the stash early, and left with a NULL ptr if there's a syntax error
while compiling it.

Since the only time it becomes an issue is when that same name
is used in the same scope after a syntax error, what happens in
the pad is not particularly important.  The simple fix is to
simply fall back to treating it like a bareword, and pretending
it was never added to the pad in the first place.

11 years agoEnable sem* functions in configure.com for 8.4+.
Craig A. Berry [Sun, 3 Mar 2013 00:00:20 +0000 (18:00 -0600)]
Enable sem* functions in configure.com for 8.4+.

They became available in VMS v8.4 in 2010.

11 years agoFix declaration after statement in vms.c's Perl_my_chdir
Craig A. Berry [Sat, 2 Mar 2013 23:55:13 +0000 (17:55 -0600)]
Fix declaration after statement in vms.c's Perl_my_chdir

And while we're there, set errno appropriately for the empty string
input case.

11 years agoDisable by default the new Copy-on-Write for 5.18
David Mitchell [Sat, 2 Mar 2013 23:31:13 +0000 (23:31 +0000)]
Disable by default the new Copy-on-Write for 5.18

It was felt that the new COW feature wasn't ready to be enabled be default
in 5.18: principally because too much XS code will assume it can just
manipulate the PVX buffer of an SVf_POK SV.

See RT #116569 for the discussion.

11 years agoSynchronise Env with CPAN
Florian Ragwitz [Sat, 2 Mar 2013 17:10:58 +0000 (12:10 -0500)]
Synchronise Env with CPAN

11 years agoSynchronise bignum with CPAN
Florian Ragwitz [Sat, 2 Mar 2013 16:58:28 +0000 (11:58 -0500)]
Synchronise bignum with CPAN

11 years agoSynchronise VERSIONs of all bignum modules
Florian Ragwitz [Sat, 2 Mar 2013 16:52:57 +0000 (11:52 -0500)]
Synchronise VERSIONs of all bignum modules

11 years agoFix signed/unsigned mismatch in vms/vms.c.
Craig A. Berry [Fri, 1 Mar 2013 21:06:47 +0000 (15:06 -0600)]
Fix signed/unsigned mismatch in vms/vms.c.

11 years agoAdd void casts to VMS-specific bail-out macro.
Craig A. Berry [Fri, 1 Mar 2013 18:54:07 +0000 (12:54 -0600)]
Add void casts to VMS-specific bail-out macro.

The macro used in vms/vms.c for errors from native calls deemed
too severe to handle was calling fprintf without checking return
values, which caused a huge pile of warnings when compiling with
/WARN=ENABLE=LEVEL5. So suppress those warnings with a void cast.

11 years agorevert: Benchmark iteration warnings should warn
David Mitchell [Fri, 1 Mar 2013 16:31:06 +0000 (16:31 +0000)]
revert: Benchmark iteration warnings should warn

This commit reverts:

    commit a820780c62918236069b3b55502640c99a9e812a
    Author:     David Golden <dagolden@cpan.org>
    AuthorDate: Tue Feb 5 22:23:37 2013 -0500
    Commit:     David Golden <dagolden@cpan.org>
    CommitDate: Tue Feb 5 22:49:36 2013 -0500

        Benchmark iteration warnings should warn, not print

because the warnings appearing on STDERR weren't being trapped by
Benchmark.t (see [perl #116831]). Revert for now, and re-address after
5.18.