This is a live mirror of the Perl 5 development currently hosted at
6 years agoregcomp.c: White-space only
Karl Williamson [Tue, 24 Nov 2015 21:14:14 +0000 (14:14 -0700)]
regcomp.c: White-space only

This does vertical alignment to make things clearer

6 years agoregen/ Output tables in hex
Karl Williamson [Fri, 13 Nov 2015 19:42:22 +0000 (12:42 -0700)]
regen/ Output tables in hex

When dealing with code points, it is easier to use the hex values.  This
outputs the tables in hex, squeezing them so they barely fit in an 80
column window.  That they didn't use to so fit was why they were not
output in hex prior to this commit.

The UTF8SKIP table is continued to be output in decimal, as the values
aren't code points.

6 years agoPerl_newATTRSUB_x: cast a bool arg
David Mitchell [Wed, 25 Nov 2015 15:58:20 +0000 (15:58 +0000)]
Perl_newATTRSUB_x: cast a bool arg

S_op_const_sv() expects a bool arg, so cast accordingly.
(Otherwise if the flag bit is > bit 7, it could get truncated to 0)

6 years agoBenchmark.t: add more diag output
David Mitchell [Wed, 25 Nov 2015 15:36:26 +0000 (15:36 +0000)]
Benchmark.t: add more diag output

2 tests in a particular block of code are consistently failing on a newbsd

Make a copy of that block of code but with the result object and
chart object generated separately, then diag dump both if any of the
tests in that new block fail, so we can see better what's going wrong.

6 years agoBenchmark.t: fix marginal tests
David Mitchell [Wed, 25 Nov 2015 11:18:38 +0000 (11:18 +0000)]
Benchmark.t: fix marginal tests

Two tests fail a lot of smokes; those tests assert that two
code variants when one is faster than the other should show a percentage
difference > 0. Then the differences are slight, the percentage may round
down to zero and the test will fail. Reduce the likelihood of this my
making one code variant a lot slower than the other

6 years agofix an else nesting error from the last set of DynaLoader patches
Tony Cook [Wed, 25 Nov 2015 05:39:16 +0000 (16:39 +1100)]
fix an else nesting error from the last set of DynaLoader patches

6 years agoSDBM_File: specify the prototyping behaviour
David Mitchell [Tue, 24 Nov 2015 16:57:50 +0000 (16:57 +0000)]
SDBM_File: specify the prototyping behaviour

This commit just adds 'PROTOTYPES: DISABLE' which is the default
anyway(*), but it stops this annoying warning on stderr:

    Please specify prototyping behavior for SDBM_File.xs (see perlxs manual)

(*) perlxs.pod implies that the default is enabled, but this doesn't
appear to be the case

6 years agoupdate for new Module-Metadata
David Mitchell [Tue, 24 Nov 2015 15:39:49 +0000 (15:39 +0000)]
update for new Module-Metadata

6 years agoUpdate Module-Metadata to version 1.000031
Karen Etheridge [Tue, 24 Nov 2015 04:01:01 +0000 (20:01 -0800)]
Update Module-Metadata to version 1.000031

1.000031  2015-11-24 03:57:55Z (TRIAL RELEASE)
  - be less noisy on failure when building as part of perl core (see perl

6 years agoExtUtils::CBuilder: silence noisy test
David Mitchell [Tue, 24 Nov 2015 15:21:43 +0000 (15:21 +0000)]
ExtUtils::CBuilder: silence noisy test

00-have-compiler.t deliberately does something that tries to fork and
exec a non-existent file.

Stop spurious 'Can't exec "djaadjfkadjkfajdf"' appearing on stderr
by temporaily closing it before running the relevant tests.

6 years agoshared.xs: remove dead code
David Mitchell [Tue, 24 Nov 2015 12:56:18 +0000 (12:56 +0000)]
shared.xs: remove dead code

Since v5.23.4-26-g0b057af made static a bunch a functions not used
outside their own src files, gcc has been complaining:

    shared.xs:1172:1: warning: ‘Perl_sharedsv_unlock’ defined but not used [-Wunused-function]
     Perl_sharedsv_unlock(pTHX_ SV *ssv)

So "delete" this function using '#if 0'

6 years agoOpcode.xs: silence compiler warning
David Mitchell [Tue, 24 Nov 2015 12:38:15 +0000 (12:38 +0000)]
Opcode.xs: silence compiler warning

Opcode.xs: In function ‘opmask_addlocal’:
../../perl.h:6473:12: warning: unused variable ‘my_cxtp’ [-Wunused-variable]
  my_cxt_t *my_cxtp = (my_cxt_t *)PL_my_cxt_list[MY_CXT_INDEX]

Without debugging enabled, opcode_debug becomes a constant, so
dMY_CXT isn't needed in opmask_addlocal().

Make the enabling of debugging based on a macro (OPCODE_DEBUG)
rather then on '#if 0', then use that accordingly.

6 years ago[perl #126443] make sure PL_oldbufptr is preserved in scan_heredoc()
Tony Cook [Tue, 24 Nov 2015 03:52:31 +0000 (14:52 +1100)]
[perl #126443] make sure PL_oldbufptr is preserved in scan_heredoc()

This is later used to update PL_oldoldbufptr, if the token following
the <<FOO is unexpected this causes S_no_op() to access an invalid

6 years ago[perl #126480] pipe() doesn't need the assertions
Tony Cook [Tue, 24 Nov 2015 03:37:35 +0000 (14:37 +1100)]
[perl #126480] pipe() doesn't need the assertions

GvIOn() already performs the checks and produces a nice error message,
and similar functions, such as open() and socket(), don't have
assertions on this condition.

6 years ago[perl #126635] don't shortcut when SVf_IVisUV is set
Tony Cook [Wed, 18 Nov 2015 23:04:25 +0000 (10:04 +1100)]
[perl #126635] don't shortcut when SVf_IVisUV is set

Most integers are small, so in most cases it won't be set.

The other option would be to always clear it, but that increases the
amount of inline code for a rare case.

6 years avoid noise on STDERR.
David Mitchell [Mon, 23 Nov 2015 17:32:01 +0000 (17:32 +0000)] avoid noise on STDERR.

If a TODO test fails, the diagnostic output should go to STDOUT rather
than STDERR.

This was originally

but since Test has been moved from cpan/ to dist/, it can be applied

6 years agoPorting/ - Fix ExtUtils::Constant
Steve Hay [Mon, 23 Nov 2015 17:41:20 +0000 (17:41 +0000)]
Porting/ - Fix ExtUtils::Constant

Now the CUSTOMIZED file appears in customized.dat

6 years agoSilence warnings in encoding::warnings
David Mitchell [Mon, 23 Nov 2015 17:11:15 +0000 (17:11 +0000)]
Silence warnings in encoding::warnings

This is Karl's patch from

which can be applied locally now that encoding::warnings has moved from
cpan/ to dist/.

6 years agomove encoding-warnings from cpan/ to dist/
David Mitchell [Mon, 23 Nov 2015 17:07:44 +0000 (17:07 +0000)]
move encoding-warnings from cpan/ to dist/

A private communication with Audrey indicated that to allow us to make
mods, this was the preferred solution.

6 years update ExtUtils::Constant status
David Mitchell [Mon, 23 Nov 2015 16:38:55 +0000 (16:38 +0000)] update ExtUtils::Constant status

It used to indicate that the blead version had diverged dramatically from
the 0.16 CPAN version. Since then a 0.23 has been released on CPAN which
mostly matches blead - blead has one test file locally modified.

NB: I ran "t/porting/customized.t --regen" and for some reason it
didn't think that customized.dat needed updating.

6 years agoperlfunc: specify valid inputs precisely [perl #126437]
Aristotle Pagaltzis [Mon, 23 Nov 2015 14:31:32 +0000 (15:31 +0100)]
perlfunc: specify valid inputs precisely [perl #126437]

6 years agoMerge branch 'clang-thread-safety-analysis' into blead
Jarkko Hietaniemi [Mon, 23 Nov 2015 13:10:44 +0000 (08:10 -0500)]
Merge branch 'clang-thread-safety-analysis' into blead

clang thread safety analysis

6 years agobump threads version
Jarkko Hietaniemi [Fri, 20 Nov 2015 17:27:32 +0000 (12:27 -0500)]
bump threads version

6 years agoanalysis cannot tell that the mutex was locked
Jarkko Hietaniemi [Thu, 19 Nov 2015 02:25:04 +0000 (21:25 -0500)]
analysis cannot tell that the mutex was locked

It was locked in S_ithread_create() - in case it returned a non-NULL thread.
Because of this conditionality the S_ithread_create() cannot be annotated.

threads.xs:1161:9: warning: releasing mutex 'thread->mutex' that was not held [-Wthread-safety-analysis]

6 years agoanalysis does not like mutex being either held or released
Jarkko Hietaniemi [Thu, 19 Nov 2015 02:18:37 +0000 (21:18 -0500)]
analysis does not like mutex being either held or released

threads.xs:1020:1: warning: mutex 'thread->mutex' is not held on every path through here [-Wthread-safety-analysis]

6 years agoclang specific diagnostics ignore/restore
Jarkko Hietaniemi [Sat, 21 Nov 2015 02:40:00 +0000 (21:40 -0500)]
clang specific diagnostics ignore/restore

6 years agoannotate S_ithread_create create_destruct_mutex use
Jarkko Hietaniemi [Wed, 18 Nov 2015 03:15:09 +0000 (22:15 -0500)]
annotate S_ithread_create create_destruct_mutex use

If the pool is passed in, and the create_destruct_mutex unlocked also
on success (so that all the unlocks happen in S_ithread_create()),
the create_destruct_mutex use can be annotated.

threads.xs:757:9: warning: releasing mutex 'my_poolp->create_destruct_mutex' th
at was not held [-Wthread-safety-analysis]

threads.xs:1000:9: warning: releasing mutex 'my_poolp->create_destruct_mutex' t
hat was not held [-Wthread-safety-analysis]

threads.c:1319:1: warning: mutex 'my_poolp->create_destruct_mutex' is not held on every path through here [-Wthread-safety-analysis]

6 years agoannotate S_ithread_count_inc mutex use
Jarkko Hietaniemi [Sat, 14 Nov 2015 14:09:38 +0000 (09:09 -0500)]
annotate S_ithread_count_inc mutex use

No warnings issued, but a clear case for annotations.

6 years agoannotate S_ithread_free mutex use
Jarkko Hietaniemi [Fri, 6 Nov 2015 00:13:22 +0000 (19:13 -0500)]
annotate S_ithread_free mutex use

threads.xs:276:13: warning: releasing mutex 'thread->mutex' that was not held [-Wthread-safety-analysis]

threads.xs:282:5: warning: releasing mutex 'thread->mutex' that was not held [-Wthread-safety-analysis]

threads.xs:394:1: warning: mutex 'thread->mutex' is still held at the end of
      function [-Wthread-safety-analysis]

threads.xs:677:1: warning: mutex 'thread->mutex' is still held at the end of
      function [-Wthread-safety-analysis]

6 years agosplit off the $0 setting so mutex use can be annotated
Jarkko Hietaniemi [Thu, 5 Nov 2015 23:15:35 +0000 (18:15 -0500)]
split off the $0 setting so mutex use can be annotated

No warnings were emitted since the use of the PL_dollarzero_mutex
was correctly bracketed by mutex lock and unlock, but by splitting
off the code and annotating it is more likely to stay correct.

6 years agocleanup the mutex use of PerlIOStdio_close
Jarkko Hietaniemi [Fri, 6 Nov 2015 00:00:01 +0000 (19:00 -0500)]
cleanup the mutex use of PerlIOStdio_close

Before: clang -Wthread-safety found the flow quite suspect:
one conditional mutex lock, with two conditional unlocks.
The code *looked* like the being okay logic-wise now, but
rather fragile, so let's make it clearer and more solid
by hoisting the locking earlier.

This is a fd close, this should not be a performance sensitive spot.

And it's in PerlIOStdio, so it should be pretty dead anyway.

perlio.c:3283:18: warning: mutex 'PL_perlio_mutex' is not held on every path through here [-Wthread-safety-analysis]
        result = PerlSIO_fclose(stdio);

perlio.c:3299:6: warning: releasing mutex 'PL_perlio_mutex' that was not held [-Wthread-safety-analysis]

6 years agoannotate the mutex use of S_more_refcounted_fds
Jarkko Hietaniemi [Thu, 5 Nov 2015 23:58:56 +0000 (18:58 -0500)]
annotate the mutex use of S_more_refcounted_fds

perlio.c:2232:2: warning: releasing mutex 'PL_perlio_mutex' that was not held [-Wthread-safety-analysis]

6 years agoannotate the mutex use of atfork_lock and atfork_unlock
Jarkko Hietaniemi [Thu, 5 Nov 2015 23:57:58 +0000 (18:57 -0500)]
annotate the mutex use of atfork_lock and atfork_unlock

util.c:2729:1: warning: mutex 'PL_perlio_mutex' is still held at the end of function [-Wthread-safety-analysis]

util.c:2729:1: warning: mutex 'PL_op_mutex' is still held at the end of function [-Wthread-safety-analysis]

util.c:2739:5: warning: releasing mutex 'PL_perlio_mutex' that was not held [-Wthread-safety-analysis]

util.c:2744:5: warning: releasing mutex 'PL_op_mutex' that was not held [-Wthread-safety-analysis]

6 years agoannotate the acquire/release of PL_op_mutex
Jarkko Hietaniemi [Thu, 5 Nov 2015 23:57:17 +0000 (18:57 -0500)]
annotate the acquire/release of PL_op_mutex

op.c:1190:1: warning: mutex 'PL_op_mutex' is still held at the end of function

op.c:1199:5: warning: releasing mutex 'PL_op_mutex' that was not held

6 years agoadd -Wthread-safety for clang 3.5 or later
Jarkko Hietaniemi [Sun, 22 Nov 2015 16:40:36 +0000 (11:40 -0500)]
add -Wthread-safety for clang 3.5 or later

With this change there is no need to explicitly e.g.
Configure ... -Accflags='-Wthread-safety'
since doing just -Dusethreads with recent enough clang
will automatically add the -Wthread-safety

6 years agoclang thread safety annotations
Jarkko Hietaniemi [Thu, 5 Nov 2015 23:52:20 +0000 (18:52 -0500)]
clang thread safety annotations

Static (compile-time) annotations for declaring the multithreaded
behavior of functions, variables, and capabilities (like mutexes).
Available since about clang 3.5.

./Configure -des -Dusedevel -Dusethreads -Dcc=clang -Accflags='-Wthread-safety'

clang -Wthread-safety then checks the validity of the annotations.

6 years agoassertion failure on foo(my $x : bar)
David Mitchell [Mon, 23 Nov 2015 08:15:40 +0000 (08:15 +0000)]
assertion failure on foo(my $x : bar)

RT #126257

'my var : attr' injects a void-context sub call just after the
pad op. However, Perl_ck_entersub_args_list() tries to impose lvalue
context on each of its args, which causes an assertion failure.

This commit makes Perl_ck_entersub_args_list() skip calling op_lvalue()
on any args which are OP_ENTERSUB/OPf_WANT_VOID. Strictly
speaking it should check that the sub call is actually an attribute
method call (e.g. first child is a const("attibutes") etc), but this
was far too much like hard work.

6 years agoTODO newish re/speed.t tests on VMS.
Craig A. Berry [Sun, 22 Nov 2015 23:02:55 +0000 (17:02 -0600)]
TODO newish re/speed.t tests on VMS.

The tests that dump regex debug info get their output mangled by the
record-oriented pipes but otherwise look fine.  So mark them to-do.

6 years fix operator precedence error from b4c079ca5
Tony Cook [Sun, 22 Nov 2015 23:37:47 +0000 (10:37 +1100)] fix operator precedence error from b4c079ca5

6 years agobase: fix a mis-statement in Changes file
Ricardo Signes [Sat, 21 Nov 2015 21:31:31 +0000 (16:31 -0500)]
base: fix a mis-statement in Changes file

6 years agorelease schedule: use a verbatim block for a list-y paragraph
Ricardo Signes [Sat, 21 Nov 2015 20:01:09 +0000 (15:01 -0500)]
release schedule: use a verbatim block for a list-y paragraph

6 years agoGet re/uniprops.t to pass on minitest
Karl Williamson [Sat, 21 Nov 2015 19:20:32 +0000 (12:20 -0700)]
Get re/uniprops.t to pass on minitest

locale handling doesn't work without POSIX module being able to load, so
doesn't work on minitest.  Prior to this patch, the code checked for
only one case of locale handling to skip when there was no POSIX, but
there was a 2nd case if failed to detect.

6 years agobase: new CPAN release
Ricardo Signes [Sat, 21 Nov 2015 18:16:47 +0000 (13:16 -0500)]
base: new CPAN release

6 years agoTick!
Abigail [Sat, 21 Nov 2015 16:55:07 +0000 (17:55 +0100)]

6 years agoHash-Util-FieldHash version bump.
Jarkko Hietaniemi [Fri, 20 Nov 2015 21:53:26 +0000 (16:53 -0500)]
Hash-Util-FieldHash version bump.

6 years agoHUF_get_trigger0 unused since at least d74d639b
Jarkko Hietaniemi [Fri, 20 Nov 2015 21:43:19 +0000 (16:43 -0500)]
HUF_get_trigger0 unused since at least d74d639b

The 0b057af7 exposed this by static-ing it, so that compilers
started warning about the unused static function.

6 years ago[perl #116677] always deparse <> as either glob or readline
Lukas Mai [Sat, 21 Nov 2015 00:15:24 +0000 (01:15 +0100)]
[perl #116677] always deparse <> as either glob or readline

6 years ago[perl #124280] don't warn for 'my $foo, *bar'
Lukas Mai [Fri, 20 Nov 2015 23:16:31 +0000 (00:16 +0100)]
[perl #124280] don't warn for 'my $foo, *bar'

It doesn't make sense to warn 'Parentheses missing around "my" list' if
adding the parens causes a syntax error (you can't declare typeglobs).

But it does make sense to warn for 'local $foo, *bar' because typeglobs
can be localized.

Thus modify the heuristic to only warn for '*' if we're not lexically
declaring something.

6 years agoBump the perl version in various places for 5.23.6
Abigail [Fri, 20 Nov 2015 19:15:14 +0000 (20:15 +0100)]
Bump the perl version in various places for 5.23.6

6 years agoNew perldelta for 5.23.6
Abigail [Fri, 20 Nov 2015 18:00:09 +0000 (19:00 +0100)]
New perldelta for 5.23.6

6 years agoVarious tests: use centralized locale detection
Karl Williamson [Wed, 21 Oct 2015 03:40:36 +0000 (21:40 -0600)]
Various tests: use centralized locale detection

These tests were using individually defined heuristics to decide whether
to do locale testing or not.  However t/ provides functions
that are more reliable and complete for determining this than the
hand-rolled ones in these tests.

6 years agolib/ Fix so works on platforms without LC_CTYPE
Karl Williamson [Fri, 20 Nov 2015 02:57:11 +0000 (19:57 -0700)]
lib/ Fix so works on platforms without LC_CTYPE

These may not actually exist in the wild, but it is better to be

This also adds an XXX comment about future possibilities.

6 years agot/ Improve locale detection
Karl Williamson [Fri, 20 Nov 2015 02:53:27 +0000 (19:53 -0700)]
t/ Improve locale detection

This would return FALSE if the platform didn't have LC_CTYPE; it really
should test if the desired locale category is available, and return TRUE
if so, regardless of LC_CTYPE's presence.  Now it may be that all
platforms that have locales have LC_CTYPE, but it is better to not make
that assumption.

It also centralizes the tests for basic locale handling into one common
function called by the others.

6 years agot/ Fix incomplete description in comment
Karl Williamson [Fri, 20 Nov 2015 02:51:53 +0000 (19:51 -0700)]
t/ Fix incomplete description in comment

6 years agot/ White-space only
Karl Williamson [Fri, 30 Oct 2015 16:14:08 +0000 (10:14 -0600)]
t/ White-space only

6 years agoop.c: Fix typo in comment
Karl Williamson [Fri, 20 Nov 2015 17:10:31 +0000 (10:10 -0700)]
op.c: Fix typo in comment

This was very recently introduced, by

6 years agoAdded epigraph for 5.23.5
Abigail [Fri, 20 Nov 2015 17:27:31 +0000 (18:27 +0100)]
Added epigraph for 5.23.5

6 years agoMerge branch 'release-5.23.5' into blead
Abigail [Fri, 20 Nov 2015 17:15:03 +0000 (18:15 +0100)]
Merge branch 'release-5.23.5' into blead

6 years agoperldelta: acknowledgements v5.23.5
Abigail [Fri, 20 Nov 2015 13:40:19 +0000 (14:40 +0100)]
perldelta: acknowledgements

6 years agoperlhist: added entry for 5.23.5
Abigail [Fri, 20 Nov 2015 13:35:01 +0000 (14:35 +0100)]
perlhist: added entry for 5.23.5

6 years agoperldelta: Modules and Pragmata
Abigail [Fri, 20 Nov 2015 13:29:33 +0000 (14:29 +0100)]
perldelta: Modules and Pragmata

6 years agohexfp: if HEXFP_NV the shift2 is unused
Jarkko Hietaniemi [Fri, 20 Nov 2015 01:47:49 +0000 (20:47 -0500)]
hexfp: if HEXFP_NV the shift2 is unused

HEXFP_NV happens with e.g. -Duselongdouble.  The unusedness is
warned about by e.g. gcc/g++ at least since 4.6, but seemingly
not by clang, even at 3.7.

6 years agoUpdate Module::CoreList for 5.23.5
Abigail [Fri, 20 Nov 2015 10:34:11 +0000 (11:34 +0100)]
Update Module::CoreList for 5.23.5

6 years agoUpdate Porting/ for previous commit
Steve Hay [Fri, 20 Nov 2015 08:16:28 +0000 (08:16 +0000)]
Update Porting/ for previous commit

(Customization is incorporated into the new CPAN release.)

6 years agoUpdate Module-Metadata to version 1.000030
Karen Etheridge [Fri, 20 Nov 2015 03:15:18 +0000 (19:15 -0800)]
Update Module-Metadata to version 1.000030

1.000030  2015-11-20 03:03:24Z (TRIAL RELEASE)
  - temp dirs cleaned up during tests (Steve Hay)
  - more accurately mark tests as TODO, so as to have a quieter and less
    confusing test run without passing TODO tests. This release is primarily
    intended for the perl 5.23.5 release.

6 years agopod/perldelta: Add punctuation
Abigail [Thu, 19 Nov 2015 18:14:35 +0000 (19:14 +0100)]
pod/perldelta: Add punctuation

6 years agoop_free(): don't assert op_private ok when erred
David Mitchell [Thu, 19 Nov 2015 15:49:03 +0000 (15:49 +0000)]
op_free(): don't assert op_private ok when erred

[perl #126258]

op_free includes an assert to make sure each op's op_private field
only has the flags set that are expected for that op. It's a thing I added
at the same time I added the regen/op_private mechanism, and is more a
general "make sure people are only setting the flags we know about" test.

However, if the op tree is being freed after a compilation error, some
op's flags may be in an inconsistent state; so skip the assert in that case.


    perl -e 'grep$0,0}'

6 years agoTurn new diag message into a link.
Abigail [Thu, 19 Nov 2015 15:46:45 +0000 (16:46 +0100)]
Turn new diag message into a link.

This turned out to be a bit of work. When running the porting tests,
the pod checker checks whether all links are valid. To do so, it
creates a database of all valid targets, and then for all links,
checks whether the target exist. However, the targets have been POD
processed, while the links have not -- except for E<sol> and
E<verbar>. So, if the target contains S<>, the link *must not*.

6 years agopodcheck.t: Deindent by 1 space to left margin.
Abigail [Thu, 19 Nov 2015 12:32:00 +0000 (13:32 +0100)]
podcheck.t: Deindent by 1 space to left margin.

6 years agopodcheck.t: Line up comments.
Abigail [Thu, 19 Nov 2015 12:28:57 +0000 (13:28 +0100)]
podcheck.t: Line up comments.

A block with all comments lined up, save for one? That hurts the eyes.

6 years agopodcheck.t: Fix typos in comments
Abigail [Thu, 19 Nov 2015 12:28:35 +0000 (13:28 +0100)]
podcheck.t: Fix typos in comments

6 years agoQuell "used only once" warning in test suite
Aaron Crane [Thu, 19 Nov 2015 11:29:24 +0000 (11:29 +0000)]
Quell "used only once" warning in test suite

6 years agomaint policy: allow fixes for new features
Aaron Crane [Sun, 15 Nov 2015 15:10:54 +0000 (15:10 +0000)]
maint policy: allow fixes for new features

As (Steve Hay)++ said on-list:

    I think it's a shame if users get a 5.X.0 release with some shiny new
    features which I hope they're excited about and start making use of,
    but then find bugs in those features and have to wait until 5.X+2.0,
    rather than 5.X.1, for fixes.

rjbs++ clarified that, although such changes constitute a break in backwards
compatibility, there are two reasons why bugs in new features should be
fixed in maint:

    * they delay people from using a feature for a year, because it does
      something stupid

    * they risk enshrining bad behavior under the usual program of bugward

6 years agosilence compiler warnings using INCMARK/POPMARK
David Mitchell [Thu, 19 Nov 2015 10:03:04 +0000 (10:03 +0000)]
silence compiler warnings using INCMARK/POPMARK

v5.23.3-305-g6cae08a introduced debugging variants of INCMARK/POPMARK, and
replaced a number of "PL_markstack_ptr--;" with "POPMARK;" etc.

This spews a bunch of "value computed is not used" warnings; so
add some "(void)"s.

Also indent the new definitions of INCMARK/POPMARK correctly.

6 years agoInitial work for pod/erldelta for 5.23.5
Abigail [Fri, 13 Nov 2015 22:46:02 +0000 (23:46 +0100)]
Initial work for pod/erldelta for 5.23.5

Processed commits up to cb4547118517bc34243bbb938eeccfbd8016c64a.

Work that still needs to be done on perldelta before 5.23.5:
  -  New/Changed/Delete modules
  -  Acknowledgements
  -  And commits after cb4547118517bc34243bbb938eeccfbd8016c64a.
  -  Get the L<> link to work referring to a new diagnostic message.

6 years agosv_inc/dec_nomg(): croak on GVs etc
David Mitchell [Wed, 18 Nov 2015 15:30:37 +0000 (15:30 +0000)]
sv_inc/dec_nomg(): croak on GVs etc

RT #126637

Prior to v5.23.4-100-g20e9643, pp_postinc() etc checked whether the SV was
an AV, non-fake GV, or any other such non-modifiable thinngy; and if so,
called Perl_croak_no_modify(). That commit of mine removed the check, and
instead relied on the underlying sv_inc_nomg() function (called by
pp_postinc()) to do the checking instead. It turns out that while
sv_inc_nomg() etc does some checks, it wasn't as thorough as pp_postinc().
So something like

    my $y = $_++ for *FOO;

now crashes with an assertion failure in sv_inc_nomg() rather than

This commit adds such checks to sv_inc_nomg() and sv_dec_nomg() - which
need them anyway, since they may be called from places other than
pp_postinc() etc.

6 years agoUpdate Config::Perl::V to 0.25
H.Merijn Brand [Wed, 18 Nov 2015 08:19:08 +0000 (09:19 +0100)]
Update Config::Perl::V to 0.25

6 years agotru64: Freshen the section on required process data size limits.
Jarkko Hietaniemi [Tue, 17 Nov 2015 02:00:27 +0000 (21:00 -0500)]
tru64: Freshen the section on required process data size limits.

6 years agoUpgrade Time::HiRes from version 1.9727_02 to 1.9728
Steve Hay [Tue, 17 Nov 2015 13:24:36 +0000 (13:24 +0000)]
Upgrade Time::HiRes from version 1.9727_02 to 1.9728

6 years agoUpgrade Math::BigInt::FastCalc from version 0.35 to 0.37
Steve Hay [Tue, 17 Nov 2015 13:21:11 +0000 (13:21 +0000)]
Upgrade Math::BigInt::FastCalc from version 0.35 to 0.37

6 years agoUpgrade Math::BigInt from version 1.999707 to 1.999710
Steve Hay [Tue, 17 Nov 2015 13:18:20 +0000 (13:18 +0000)]
Upgrade Math::BigInt from version 1.999707 to 1.999710

6 years ago[perl #126193] don't use a trash SV if no indexes are provided to pp_lslice
Tony Cook [Wed, 11 Nov 2015 04:57:09 +0000 (15:57 +1100)]
[perl #126193] don't use a trash SV if no indexes are provided to pp_lslice

6 years ago[perl #126602] make sure targ isn't freed from under us
Tony Cook [Wed, 11 Nov 2015 00:29:03 +0000 (11:29 +1100)]
[perl #126602] make sure targ isn't freed from under us

6 years agohandle empty directory lists in File::Find
Mohammed El-Afifi [Mon, 9 Nov 2015 21:49:08 +0000 (23:49 +0200)]
handle empty directory lists in File::Find

6 years agoConfigure: gcc 5 exists.
Jarkko Hietaniemi [Mon, 16 Nov 2015 00:45:06 +0000 (19:45 -0500)]
Configure: gcc 5 exists.

6 years agoUpdated for recent CPAN releases
Chris 'BinGOs' Williams [Sun, 15 Nov 2015 18:25:07 +0000 (18:25 +0000)]
Updated for recent CPAN releases

6 years agoAdd epigraph for 5.22.1-RC2
Steve Hay [Sun, 15 Nov 2015 15:26:53 +0000 (15:26 +0000)]
Add epigraph for 5.22.1-RC2

6 years agoPerl 5.22.1-RC2 today
Steve Hay [Sun, 15 Nov 2015 14:14:10 +0000 (14:14 +0000)]
Perl 5.22.1-RC2 today

6 years agoRevert "Module::CoreList updates for 5.22.1"
Steve Hay [Sun, 15 Nov 2015 13:45:01 +0000 (13:45 +0000)]
Revert "Module::CoreList updates for 5.22.1"

This reverts commit 89a7d40e89d2f2e64fe5421cb28d5a1f29bb25b4.

(The need for 5.22.1-RC2 means that 5.22.1 will not be released before
5.23.5 now, so remove the 5.22.1 data from here for now. I will
reinstate it after 5.23.5 has been released.)

6 years agoPATCH: [perl #126615] Segfault/assert fail with regex_sets
Karl Williamson [Sat, 14 Nov 2015 18:41:30 +0000 (11:41 -0700)]
PATCH: [perl #126615] Segfault/assert fail with regex_sets

This is a the result of where I added an assert to make sure that
where I didn't think a situation could happen, in fact couldn't.  But it
turns out it can happen when there is a syntax error, so raise an error,
instead of doing the assert.

6 years agoAppease the gods of stupid tests.
Jarkko Hietaniemi [Sat, 14 Nov 2015 16:25:38 +0000 (11:25 -0500)]
Appease the gods of stupid tests.

6 years agoSome more threads.xs comments, courtesy jhedden
Jarkko Hietaniemi [Sat, 7 Nov 2015 23:24:16 +0000 (18:24 -0500)]
Some more threads.xs comments, courtesy jhedden

6 years agoDocument S_ithread_run lock+unlock in more detail, courtesy davem
Jarkko Hietaniemi [Fri, 6 Nov 2015 21:59:54 +0000 (16:59 -0500)]
Document S_ithread_run lock+unlock in more detail, courtesy davem

6 years agoPathTools: new CPAN release
Ricardo Signes [Fri, 13 Nov 2015 23:44:16 +0000 (18:44 -0500)]
PathTools: new CPAN release

This release gets the latest blead code onto CPAN, but blead gets
the updated Makefile.PL, which fixes INSTALLDIRS to use site
on 5.12-ish and later.

6 years agobase: no longer works on v5.6, require v5.8
Ricardo Signes [Fri, 13 Nov 2015 16:27:56 +0000 (11:27 -0500)]
base: no longer works on v5.6, require v5.8

6 years agoInclude the error message on IPC::Open3 exec() failure
Dagfinn Ilmari Mannsåker [Tue, 10 Nov 2015 10:59:24 +0000 (10:59 +0000)]
Include the error message on IPC::Open3 exec() failure

6 years ago[perl #126325] don't read past the end of the source for pack [Hh]
Tony Cook [Thu, 22 Oct 2015 01:03:05 +0000 (12:03 +1100)]
[perl #126325] don't read past the end of the source for pack [Hh]

With a utf8 target but a non-utf8 source, pack Hh would read past the
end of the source when given a length, due to an incorrect condition.

6 years agofix symbian XS too, missed this when checking over the patch
Tony Cook [Tue, 10 Nov 2015 22:20:56 +0000 (09:20 +1100)]
fix symbian XS too, missed this when checking over the patch

Unfortunately the symbian SDK doesn't appear to be available anymore.

6 years agoXSLoader 0.21: use dl_find_symbol 3rd optional argument
Reini Urban [Fri, 13 Mar 2015 23:31:41 +0000 (00:31 +0100)]
XSLoader 0.21: use dl_find_symbol 3rd optional argument

to skip the worthless dl_last_error message

6 years agoDynaLoader: extend t/DynaLoader.t to be run from basedir also
Reini Urban [Wed, 11 Mar 2015 17:11:53 +0000 (18:11 +0100)]
DynaLoader: extend t/DynaLoader.t to be run from basedir also

This simplifies testing from core.