This is a live mirror of the Perl 5 development currently hosted at
3 years agoregcomp.c: Put common code in a macro
Karl Williamson [Mon, 8 Oct 2018 13:06:52 +0000 (07:06 -0600)]
regcomp.c: Put common code in a macro

This trivial code is extracted into a common macro in preparation for a
future commit when it will become non-trivial, and hence that logic will
only have to occur once.

3 years agoregcomp.c: Rename macro and label
Karl Williamson [Sun, 7 Oct 2018 14:03:47 +0000 (08:03 -0600)]
regcomp.c: Rename macro and label

These move away from talking about pass 1, in preparation for future

3 years agoregcomp.c: Use another macro consistently
Karl Williamson [Wed, 17 Oct 2018 17:21:20 +0000 (11:21 -0600)]
regcomp.c: Use another macro consistently

Sometimes the code refers to the union member explicitly, and sometimes
it uses the macro that evaluates to that member.  This commit changes to
consistently use the latter.

3 years agoregcomp.c: Use name consistently
Karl Williamson [Tue, 18 Sep 2018 00:17:02 +0000 (18:17 -0600)]
regcomp.c: Use name consistently

In the function Perl_re_op_compile(), there is a stack variable 'ri',
and an element of a stack structure rxi, which part way through one is
set to the other, so that at times one is used and other times the other
is used.  This commit removes the variable, in favor of the struct
element, making consistent use throughout the function (and since the
struct is passed to its callees, it makes this value available to them

3 years agoregcomp.c: Use regnode offsets during parsing
Karl Williamson [Mon, 17 Sep 2018 04:58:23 +0000 (22:58 -0600)]
regcomp.c: Use regnode offsets during parsing

This changes the pattern parsing to use offsets from the first node in
the pattern program, rather than direct addresses of such nodes.  This
is in preparation for a later change in which more mallocs will be done
which will change those addresses, whereas the offsets will remain
constant.  Once the final program space is allocated, real addresses are
used as currently.  This limits the necessary changes to a few
functions.  Also, real addresses are used if they are constant across a
function; again this limits the changes.

Doing this introduces a new typedef for clarity 'regnode_offset' which
is not a pointer, but a count.  This necessitates changing a bunch of
things to use 0 instead of NULL to indicate an error.

A new boolean is also required to indicate if we are in the first or
second passes of the pattern.  And separate heap space is allocated for
scratch during the first pass.

3 years agoregcomp.sym: Add lengths for ANYOF nodes
Karl Williamson [Thu, 20 Sep 2018 17:15:00 +0000 (11:15 -0600)]
regcomp.sym: Add lengths for ANYOF nodes

This changes regcomp.sym to generate the correct lengths for ANYOF
nodes, which means they don't have to be special cased in regcomp.c,
leading to simplification

3 years agoregcomp.h: Swap struct vs typedef
Karl Williamson [Fri, 21 Sep 2018 14:33:31 +0000 (08:33 -0600)]
regcomp.h: Swap struct vs typedef

This struct has two names.  I previously left the less descriptive one
as the primary because of back compat issues.  But I now realize that
regcomp.h is only used in the core, so it's ok to swap for the better
name to be primary.

3 years agoregcomp.c: Generate new regnode for /[[:posix:]]/l
Karl Williamson [Fri, 21 Sep 2018 04:24:59 +0000 (22:24 -0600)]
regcomp.c: Generate new regnode for /[[:posix:]]/l

This follows on to the previous commit and generates code to use the new
regnode.  This allows some simplifications.  The determination of the
regnode is moved later in the function that does this; the code that
backed this out if we guessed wrong is excised.

3 years agoregcomp.sym: Add node type ANYOF_POSIXL
Karl Williamson [Thu, 20 Sep 2018 16:52:01 +0000 (10:52 -0600)]
regcomp.sym: Add node type ANYOF_POSIXL

This is like ANYOFL, but has runtime matches of /[[:posix:]]/ in it,
which requires extra space.  Adding this will allow a future commit to
simplify handling for ANYOF nodes.

3 years agoregcomp.h: Add some macros
Karl Williamson [Fri, 21 Sep 2018 04:23:00 +0000 (22:23 -0600)]
regcomp.h: Add some macros

These are use to allow the bit map of run-time /[[:posix:]]/l classes to
be stored in a variable, and not just in the argument of an ANYOF node.
This will enable the next commit to use such a variable.  The current
macros are rewritten to just call the new ones with the proper arguments.

A macro of a different sort is also created to allow one to set the
entire bit field in the node at once.

3 years agoregcomp.h: Remove unused macros
Karl Williamson [Fri, 21 Sep 2018 04:21:44 +0000 (22:21 -0600)]
regcomp.h: Remove unused macros

I had kept these macros around for backwards compatibility.  But now I
realize regcomp.h is only for core use, so no need to retain them.

3 years agoregcomp.c: White-space, comment only
Karl Williamson [Mon, 17 Sep 2018 04:53:37 +0000 (22:53 -0600)]
regcomp.c: White-space, comment only

3 years agoregcomp.h: White-space, comments only
Karl Williamson [Thu, 20 Sep 2018 16:23:01 +0000 (10:23 -0600)]
regcomp.h: White-space, comments only

3 years agoregcomp.c: Add conversion macros and use them
Karl Williamson [Mon, 17 Sep 2018 04:35:48 +0000 (22:35 -0600)]
regcomp.c: Add conversion macros and use them

This adds macros that hide the details in finding the regnode address
from the offset from the beginning of the pattern's program, and vice

3 years agoregcomp.c: Change macro formal parameter name
Karl Williamson [Mon, 17 Sep 2018 04:25:27 +0000 (22:25 -0600)]
regcomp.c: Change macro formal parameter name

The parameter is not a node, but an offset into the array of nodes;  The
new name is clearer.

3 years agoregcomp.c: Use pre-existing macro
Karl Williamson [Mon, 17 Sep 2018 04:20:42 +0000 (22:20 -0600)]
regcomp.c: Use pre-existing macro

This macro expands to the code it replaces.  This will make a future
commit easier.

3 years agoregcomp.c: Rename macros; reword some panic messages
Karl Williamson [Mon, 17 Sep 2018 02:30:33 +0000 (20:30 -0600)]
regcomp.c: Rename macros; reword some panic messages

These macros had the failure code hard-wired into their names.  In
preparation for changing that failure code, change the names and
messages into more generic ones.

3 years agoregcomp.h: Create FILL_NODE macro and use it
Karl Williamson [Thu, 20 Sep 2018 15:44:21 +0000 (09:44 -0600)]
regcomp.h: Create FILL_NODE macro and use it

This is a more fundamental operation than the pre-existing
FILL_ADVANCE_NODE, which is changed to use this for the portion that
fills the node but doesn't advance the pointer.

3 years agot/re/reg_mesg.t: Turn off warns for experimental
Karl Williamson [Tue, 16 Oct 2018 15:50:55 +0000 (09:50 -0600)]
t/re/reg_mesg.t: Turn off warns for experimental

These tests aren't testing for this, and a future commit will cause
these to otherwise be output.

3 years agot/lib/warnings/regcomp: Turn off warns for experimental
Karl Williamson [Sun, 14 Oct 2018 19:11:14 +0000 (13:11 -0600)]
t/lib/warnings/regcomp: Turn off warns for experimental

These tests aren't testing for this, and a future commit will cause
these to otherwise be output.

3 years agobasic.t: Provide descriptions for all unit tests
James E Keenan [Thu, 18 Oct 2018 18:07:27 +0000 (14:07 -0400)]
basic.t: Provide descriptions for all unit tests

The better to be able to navigate around the file when debugging.

3 years ago(perl #125760) add fatal :utf8 tests for recv and send
Tony Cook [Wed, 17 Oct 2018 04:51:16 +0000 (15:51 +1100)]
(perl #125760) add fatal :utf8 tests for recv and send

Their behaviour on :utf8 streams doesn't seem to have been tested

3 years agoUse bsd_glob() instead of glob().
James E Keenan [Wed, 17 Oct 2018 20:22:43 +0000 (16:22 -0400)]
Use bsd_glob() instead of glob().

Two instances of glob() which run on MSWin32 were overlooked in commit

Thanks to Christian Walde for Win32 smoke testing and assistance in diagnosis.

3 years agoregcomp.c: Make 'const' 2 parms to re_op_compile
Karl Williamson [Tue, 16 Oct 2018 18:12:32 +0000 (12:12 -0600)]
regcomp.c: Make 'const' 2 parms to re_op_compile

These are unchanged in the function; might as well indicate that.

3 years agoregcomp.c: Change name spelling for clarity
Karl Williamson [Wed, 17 Oct 2018 18:26:37 +0000 (12:26 -0600)]
regcomp.c: Change name spelling for clarity

There are two structures: REGEXP and regexp, that are subtly different.
This capitalizes the name of references to the first

3 years agoregcomp.c: Add #ifdefs for RE_TRACK_PATTERN_OFFSETS
Karl Williamson [Sat, 15 Sep 2018 14:17:21 +0000 (08:17 -0600)]
regcomp.c: Add #ifdefs for RE_TRACK_PATTERN_OFFSETS

This is supposed to be independent of DEBUGGING, but in fact regcomp.c
would not compile unless both were false or both true

3 years agofix 'for reverse @array' bug on AIX
David Mitchell [Wed, 17 Oct 2018 14:10:10 +0000 (15:10 +0100)]
fix 'for reverse @array' bug on AIX

RT #133558

Due to what appears to be a compiler bug on AIX (or perhaps it's
undefined behaviour which happens to work on other platforms), this line
of code in pp_iter():

    inc = 1 - (PL_op->op_private & OPpITER_REVERSED);

was setting inc to 4294967295 rather than to the expected -1 (inc was a
64-bit signed long).

Fix it with a couple of judicious (IV) casts (which ought to be a NOOP).

3 years agoperldelta for commits:
James E Keenan [Wed, 17 Oct 2018 13:00:43 +0000 (09:00 -0400)]
perldelta for commits:


3 years agoRemove File::Glob::glob() in perl-5.30
James E Keenan [Sat, 13 Oct 2018 19:48:39 +0000 (15:48 -0400)]
Remove File::Glob::glob() in perl-5.30

For: RT # 133586

3 years agoImplement fatalization of dump()
James E Keenan [Sat, 13 Oct 2018 02:29:46 +0000 (22:29 -0400)]
Implement fatalization of dump()

Must now be written fully qualified: CORE::dump().

Adapt tests that previously warned, plus adapt one test that incidentally used dump().

For: RT # 133584

3 years agoFatalize use of $* and $#
James E Keenan [Fri, 12 Oct 2018 15:55:40 +0000 (11:55 -0400)]
Fatalize use of $* and $#

Adapt tests in various files to removal of these variables.  Add
t/lib/croak/gv to test fatalizations of $# and $* -- tests therein
adapted from tests formerly in t/lib/warnings/gv.

Per: RT # 133583

3 years agowin32: define HAS_BUILTIN_EXPECT on MinGW
Tomasz Konojacki [Sun, 12 Aug 2018 23:56:47 +0000 (01:56 +0200)]
win32: define HAS_BUILTIN_EXPECT on MinGW

According to perlwin32, the oldest officially supported version of
gcc is 3.4.5. This built-in was introduced in 3.0, which means we
don't have to do any version checks.

[perl #133442]

3 years agoUpdate example of Dump on hashref.
James E Keenan [Sun, 14 Oct 2018 01:13:14 +0000 (21:13 -0400)]
Update example of Dump on hashref.

For: RT # 133499

Per Tony Cook, the behavior changed in
e1a7ec8d453649a65aea34af90c3042a5137191e (March 2013).

3 years agoFix used only once warning in gmagic.t.
Craig A. Berry [Fri, 12 Oct 2018 19:26:09 +0000 (14:26 -0500)]
Fix used only once warning in gmagic.t.

3 years agoSync bignum with CPAN version 0.51
James E Keenan [Fri, 12 Oct 2018 12:04:22 +0000 (08:04 -0400)]
Sync bignum with CPAN version 0.51

3 years agoAccept also ESTALE (fix for RT #133534)
Slaven Rezic [Wed, 3 Oct 2018 14:07:32 +0000 (10:07 -0400)]
Accept also ESTALE (fix for RT #133534)

ESTALE may occur in some environments when accessing a
now non-existing directory, e.g. when using NFS or in docker

3 years agoRemove obsolete mention of a fifth arena type
Dagfinn Ilmari Mannsåker [Thu, 11 Oct 2018 16:38:50 +0000 (17:38 +0100)]
Remove obsolete mention of a fifth arena type

Pointer table entries used to be allocated from a fifth arena.
That was removed in commit db93c0c46b34e8b2e37c671b7362d0fa2550f5f7
(in 2010), but that commit neglected to adjust the number of arena
types in the comment.

3 years agoMinor POD cleanups in sv.c
Dagfinn Ilmari Mannsåker [Thu, 11 Oct 2018 16:30:40 +0000 (17:30 +0100)]
Minor POD cleanups in sv.c

- Add empty line after =head1
- Remove spurious =cut

This pod isn't installed anywhere, but 'perldoc sv.c' looks nicer now
and doesn't complain about errors.

3 years agoBe more explicit about how to work with $AUTOLOAD
Eugen Konkov [Thu, 13 Sep 2018 16:13:24 +0000 (19:13 +0300)]
Be more explicit about how to work with $AUTOLOAD

Update code sample to account for 'use strict', avoiding:

    Global symbol "$AUTOLOAD" requires explicit package name

Committer: Improve example so as to:

Use our now-standard 4-space indents in code samples; correct call to
'who' so that it produces same output on Linux and FreeBSD.

3 years agofix wrong number of parameters for macro SHIFT_VAR
Alexandr Savca [Mon, 8 Oct 2018 14:32:44 +0000 (17:32 +0300)]
fix wrong number of parameters for macro SHIFT_VAR

3 years agoregcomp.c: Change error reporting mechanism slightly
Karl Williamson [Fri, 2 Mar 2018 11:47:45 +0000 (04:47 -0700)]
regcomp.c: Change error reporting mechanism slightly

There are (rare) constructs which cause regcomp.c to modify the user
input stream (stashing the original), and that is parsed instead before
returning to the continue with the original.  A problem arises if an
error occurs during the parsing of this modified version.  We want to
report the location of the error and context based on the original.
This led to 285b5ca0145796a915dec03e87e0176fd4681041 (fixing #126261).

This new commit simplifies the mechanism so that it is easier to

3 years agoEliminated 3 '-Wparentheses' warnings detected by g++-8.
James E Keenan [Wed, 26 Sep 2018 16:43:04 +0000 (12:43 -0400)]
Eliminated 3 '-Wparentheses' warnings detected by g++-8.

For: RT # 133557

3 years agoperldelta for 1ed4b7762a85
Tony Cook [Wed, 10 Oct 2018 03:31:44 +0000 (14:31 +1100)]
perldelta for 1ed4b7762a85

3 years ago(perl #126760) adapt sigtrap for layers on STDERR.
Tony Cook [Wed, 26 Sep 2018 01:12:34 +0000 (11:12 +1000)]
(perl #126760) adapt sigtrap for layers on STDERR.

sigtrap defines a signal handler apparently intended to be called
under unsafe signals, since a) the code was written before safe
signals were implemented and b) it uses syswrite() for output and
avoid creating new SVs where it can.

Unfortunately syswrite() doesn't handle PerlIO layers, *and* with
syswrite() being disallowed for :utf8 handlers, throws an exception.

This causes the sigtrap tests to fail if PERL_UNICODE is set and the
current locale is a UTF-8 locale.

I want to avoid allocating new SVs until the point where the code
originally did so, so the code now attempts a syswrite() under
eval, falling back to print, and then at the point where the original
code started allocating SVs uses PerlIO::get_layers() to check if
any layers might make a difference to the output.

3 years ago(perl #125760) fatalize sysread/syswrite/recv/send on :utf8 handles
Tony Cook [Tue, 25 Sep 2018 01:18:40 +0000 (11:18 +1000)]
(perl #125760) fatalize sysread/syswrite/recv/send on :utf8 handles

This includes removing the :utf8 logic from pp_syswrite.  pp_sysread
retains it, since it's also used for read().

Tests that are specifically testing the behaviour against :utf8
handles have been removed (eg in lib/open.t), several other tests
that incidentally used those functions on :utf8 handles have been
adapted to use :raw handles instead (eg. op/readline.t).

Test lib/sigtrap.t fails if STDERR is :utf8, in code from the
original 5.000 commit, which is intended to run in a signal handler

3 years agoRT#133573: $^X fallback when platform-specific technique fails
Aaron Crane [Tue, 9 Oct 2018 13:41:10 +0000 (14:41 +0100)]
RT#133573: $^X fallback when platform-specific technique fails

3 years agofix typos
Alexandr Savca [Tue, 9 Oct 2018 10:26:36 +0000 (13:26 +0300)]
fix typos

Committer: For porting tests: Update $VERSION in 4 files.

    ./perl -Ilib regen/
    ./perl -Ilib regen/

3 years agoregcomp.c: Fix Posix ASCII defins for cased, vert space
Karl Williamson [Sun, 7 Oct 2018 14:56:27 +0000 (08:56 -0600)]
regcomp.c: Fix Posix ASCII defins for cased, vert space

The current definitions are wrong, but not actually used currently.
This fixes them.  cased is the same as alphabetic in the ASCII range,
and set vert space to NULL so that it won't inadvertently get used

3 years agoperl.c: Silence compiler warning
Karl Williamson [Sun, 7 Oct 2018 14:51:38 +0000 (08:51 -0600)]
perl.c: Silence compiler warning

A space is needed in these formats to comply with C++11

3 years agoPOSIX.pod: Mark cuserid() as obsolete
Matthias Bethke [Sat, 6 Oct 2018 04:39:09 +0000 (22:39 -0600)]
POSIX.pod: Mark cuserid() as obsolete

3 years agoAdd Matthias Bethke to AUTHORS
Karl Williamson [Sat, 6 Oct 2018 04:45:06 +0000 (22:45 -0600)]
Add Matthias Bethke to AUTHORS

3 years agomention gmake builds in a few more places.
Tony Cook [Wed, 12 Sep 2018 05:49:25 +0000 (15:49 +1000)]
mention gmake builds in a few more places.

3 years ago(perl #133494) better document CCHOME for GCC builds
Tony Cook [Wed, 12 Sep 2018 05:48:27 +0000 (15:48 +1000)]
(perl #133494) better document CCHOME for GCC builds

3 years agoperldelta for 2273039810f4
Tony Cook [Fri, 5 Oct 2018 04:41:09 +0000 (14:41 +1000)]
perldelta for 2273039810f4

3 years ago(perl #133439) fix -Dm reporting for calloc()
Tony Cook [Thu, 6 Sep 2018 04:05:20 +0000 (14:05 +1000)]
(perl #133439) fix -Dm reporting for calloc()

a) report both the size and count, and the total allocated rather than
   just the count and total allocated, which was displayed in a
   misleading fashion

b) use %zu formatting to match the original types (size_t) and remove
   the casts to long, which can lose information on Win32, where
   long is 32-bits on x64 builds.

3 years agoImplement scheduled fatalization of my() in false conditional
James E Keenan [Tue, 25 Sep 2018 19:28:46 +0000 (15:28 -0400)]
Implement scheduled fatalization of my() in false conditional

op.c: substitute exception for warning.  Move documentation in perldiag
from W to F.  Remove tests for warnings for such statements.

Test for expected error messages for my() in false conditional.  Make
new tests more self-documenting.

For: RT # 133543

3 years agoChange REG_INFTY to 2**16-1, instead of 2**15-1
Karl Williamson [Sun, 30 Sep 2018 18:10:17 +0000 (12:10 -0600)]
Change REG_INFTY to 2**16-1, instead of 2**15-1

This commit doubles the upper limit that unbounded regular expression
quantifiers can match up to.  Things like {m,} "+" and "*" now can match
up to U16_MAX times.

We probably should make this a 32 bit value, but doing this doubling was
easy and has fewer potential implications.

See and

3 years agoperlre: Add missing word to fix grammar
Karl Williamson [Sun, 30 Sep 2018 17:27:13 +0000 (11:27 -0600)]
perlre: Add missing word to fix grammar

3 years agoregexec.c: Comments, White-space only
Karl Williamson [Sat, 29 Sep 2018 15:13:03 +0000 (09:13 -0600)]
regexec.c: Comments, White-space only

A few clarifications

3 years agoregexec.c: Remove obsolete comments
Karl Williamson [Sat, 29 Sep 2018 15:07:39 +0000 (09:07 -0600)]
regexec.c: Remove obsolete comments

The first comment listed an item as a TODO that was recommended by
Unicode.  That recommendation is being rescinded in Unicode 12.0 based
on a ticket I filed against Unicode, which in turn was based on feedback
from Asmus Freitag.

The second comment was obsoleted by later code changes.

3 years agoregexec.c: Remove macro use for further clarity
Karl Williamson [Sat, 29 Sep 2018 15:03:12 +0000 (09:03 -0600)]
regexec.c: Remove macro use for further clarity

Commit 4c83fb55d7096a1d0e6a7a8e25d20b186be3281d added a macro for
clarity.  I have since realized that it is even clearer to spell things
as this commit now does.

3 years agore/script_run.t: White-space only
Karl Williamson [Sun, 30 Sep 2018 16:41:04 +0000 (10:41 -0600)]
re/script_run.t: White-space only

3 years agoPATCH: [perl #133547]: script run broken
Karl Williamson [Sun, 30 Sep 2018 16:38:02 +0000 (10:38 -0600)]
PATCH: [perl #133547]: script run broken

All scripts can have the ASCII digits for their numbers.  Scripts with
their own digits can alternatively use those.  Only one of these two
sets can be used in a script run.  The decision as to which set to use
must be deferred until the first digit is encountered, as otherwise we
don't know which set will be used.  Prior to this commit, the decision
was being made prematurely in some cases.  As a result of this change,
the non-ASCII-digits in the Common script need to be special-cased, and
different criteria are used to decide if we need to look up whether a
character is a digit or not.

3 years agoregexec.c: Rename variable
Karl Williamson [Sun, 30 Sep 2018 16:33:22 +0000 (10:33 -0600)]
regexec.c: Rename variable

The new name is clearer as to its meaning, more so after the next

3 years agouse a buffer for is_cur_LC_category_utf8
Nicolas R [Wed, 26 Sep 2018 22:15:56 +0000 (17:15 -0500)]
use a buffer for is_cur_LC_category_utf8

avoid malloc/free when possible

3 years agoUpdates to ANDK/CPAN-2.21-TRIAL.tar.gz
Andreas Koenig [Thu, 27 Sep 2018 06:06:34 +0000 (06:06 +0000)]
Updates to ANDK/CPAN-2.21-TRIAL.tar.gz

3 years agoperldelta for 903b1101f7c2c55545e6cfd3eb5dfd564e1befd2
James E Keenan [Wed, 26 Sep 2018 14:40:55 +0000 (14:40 +0000)]
perldelta for 903b1101f7c2c55545e6cfd3eb5dfd564e1befd2

3 years agoRemove arybase support from B::Deparse
Dagfinn Ilmari Mannsåker [Mon, 4 Dec 2017 11:27:57 +0000 (11:27 +0000)]
Remove arybase support from B::Deparse

3 years agoRemove support for setting $[ to a non-zero value
Dagfinn Ilmari Mannsåker [Wed, 18 Oct 2017 00:01:11 +0000 (01:01 +0100)]
Remove support for setting $[ to a non-zero value

This removes arybase and all its surrounding machinery.

3 years agoperldelta for eda3f954e1ab
Tony Cook [Wed, 26 Sep 2018 05:09:13 +0000 (15:09 +1000)]
perldelta for eda3f954e1ab

3 years ago(perl #130674) don't modify $^H in
Tony Cook [Wed, 1 Feb 2017 05:31:02 +0000 (16:31 +1100)]
(perl #130674) don't modify $^H in

This could remove non-vars strictness from the caller.

3 years agoRemove perlweb bits from release manager's guide
John SJ Anderson [Tue, 25 Sep 2018 14:15:10 +0000 (07:15 -0700)]
Remove perlweb bits from release manager's guide

See <> for
contextual detail around this removal.

3 years agoAvoid compiler warning showing up on darwin.
James E Keenan [Tue, 11 Sep 2018 00:30:11 +0000 (20:30 -0400)]
Avoid compiler warning showing up on darwin.

For example, in

3 years agoRemove B::Debug from core distribution.
James E Keenan [Sun, 23 Sep 2018 21:20:32 +0000 (17:20 -0400)]
Remove B::Debug from core distribution.

It continues to exist as a CPAN distribution.

Increment $B::Terse::VERSION and $B::Concise::VERSION due to changes in POD.

Remove internal links to B::Debug within two .pod files.

For: RT #130410

3 years agoamend sisyphus' email in Porting/
sisyphus [Mon, 24 Sep 2018 15:03:32 +0000 (01:03 +1000)]
amend sisyphus' email in Porting/

Committer: Retain contributor's superseded email address in 2nd column.
Re-alphabetize 1st column of Porting/ a little.

3 years agoamend sisyphus' email address in AUTHORS
sisyphus [Mon, 24 Sep 2018 15:03:10 +0000 (01:03 +1000)]
amend sisyphus' email address in AUTHORS

3 years agodefine HAS_LDEXPL in win32/config_H.gc
sisyphus [Sat, 22 Sep 2018 00:39:02 +0000 (10:39 +1000)]
define HAS_LDEXPL in win32/config_H.gc

3 years agodefine d_ldexpl in win32/config.gc
sisyphus [Sat, 22 Sep 2018 00:37:22 +0000 (10:37 +1000)]
define d_ldexpl in win32/config.gc

3 years agoregcomp.c: Fix typo in debug stmt
Karl Williamson [Sun, 23 Sep 2018 16:30:47 +0000 (10:30 -0600)]
regcomp.c: Fix typo in debug stmt

The name of the function was misspelled.

3 years agoChooser of the slain
Chris 'BinGOs' Williams [Fri, 21 Sep 2018 16:53:30 +0000 (17:53 +0100)]
Chooser of the slain

3 years agoUpdate Module-CoreList for v5.29.4 (shim)
Chris 'BinGOs' Williams [Fri, 21 Sep 2018 16:44:19 +0000 (17:44 +0100)]
Update Module-CoreList for v5.29.4 (shim)

3 years agot/uni/caller.t should declare its plan at run time
Nicolas R [Thu, 20 Sep 2018 21:06:52 +0000 (15:06 -0600)]
t/uni/caller.t should declare its plan at run time

Unit test should declare their test plan after
compilation when possible.

3 years agoAdjust t/op/stat.t when run from docker
Nicolas R [Thu, 20 Sep 2018 21:25:18 +0000 (15:25 -0600)]
Adjust t/op/stat.t when run from docker

Skipping tty tests on linux containers
like docker.

3 years agoMove the is_linux_container test helper to
Nicolas R [Thu, 20 Sep 2018 21:21:32 +0000 (15:21 -0600)]
Move the is_linux_container test helper to

op/getppid.t helper is_linux_container could be used
by other tests. In order to avoid multiple definitions
of that function and take advantage of any future changes
move that helper to which is used by most tests.

3 years agoperldelta for 12cad9bd9972
Tony Cook [Fri, 21 Sep 2018 05:56:07 +0000 (15:56 +1000)]
perldelta for 12cad9bd9972

3 years agobumping versions to 5.29.4
John SJ Anderson [Fri, 21 Sep 2018 03:35:56 +0000 (20:35 -0700)]
bumping versions to 5.29.4

3 years agonew perldelta for 5.29.4
John SJ Anderson [Fri, 21 Sep 2018 03:29:50 +0000 (20:29 -0700)]
new perldelta for 5.29.4

3 years agoupdate release_schedule for 5.29.3
John SJ Anderson [Fri, 21 Sep 2018 03:20:54 +0000 (20:20 -0700)]
update release_schedule for 5.29.3

3 years ago5.29.3 epigraph
John SJ Anderson [Fri, 21 Sep 2018 03:20:13 +0000 (20:20 -0700)]
5.29.3 epigraph

3 years agoMerge branch 'release-5.29.3' into blead
John SJ Anderson [Fri, 21 Sep 2018 03:12:16 +0000 (20:12 -0700)]
Merge branch 'release-5.29.3' into blead

3 years ago(perl #132655) nul terminate result of unpack "u" of invalid data
Tony Cook [Mon, 20 Aug 2018 06:31:45 +0000 (16:31 +1000)]
(perl #132655) nul terminate result of unpack "u" of invalid data

In the given test case, Perl_atof2() would run off the end of the PV,
producing an error from ASAN.

3 years agoAdd new release to perlhist v5.29.3
John SJ Anderson [Fri, 21 Sep 2018 00:00:21 +0000 (17:00 -0700)]
Add new release to perlhist

3 years agoUpdate Module::Corelist for 5.29.3
John SJ Anderson [Thu, 20 Sep 2018 23:31:10 +0000 (16:31 -0700)]
Update Module::Corelist for 5.29.3

3 years agoUpdate perldelta for 5.29.3
John SJ Anderson [Thu, 20 Sep 2018 22:50:25 +0000 (15:50 -0700)]
Update perldelta for 5.29.3

3 years agohandy.h: Silence compiler warning
Karl Williamson [Wed, 19 Sep 2018 21:38:09 +0000 (15:38 -0600)]
handy.h: Silence compiler warning

This warning was introduced in db54010671d6c27faf667d658073743b14cd9b58.
and is about comparing signed and unsigned results.  This commit casts
both operands to ptrdiff_t which is likely the widest signed type
available on the platform.  This can fail if the one of the operands is
greater than PTRDIFF_MAX.  But lots of other things can fail in that
case as well.  As the reply from Tomasz Konojacki in the thread starting
with points out,
compilers are now assuming that no object is larger than PTRDIFF_MAX,
and if they can assume that, so can we.

3 years agoCreate Ptrdiff_t type
Karl Williamson [Wed, 19 Sep 2018 21:31:34 +0000 (15:31 -0600)]
Create Ptrdiff_t type

which evaluates to SSize_t in the unlikely event that there isn't a
ptrdiff_t on the platform.  ptrdiff_t is safer than ssize_t, as the
latter need not contain any negative number besides -1.

3 years agoDon't overallocate space for /[foo]/
Karl Williamson [Wed, 19 Sep 2018 16:02:24 +0000 (10:02 -0600)]
Don't overallocate space for /[foo]/

The ANYOF regnode type (generated by bracketed character classes and
\p{}) was allocating too much space because the argument field was being counted twice

3 years agoBump Devel::PPPort in Changes file
Sawyer X [Wed, 19 Sep 2018 14:42:57 +0000 (17:42 +0300)]
Bump Devel::PPPort in Changes file

3 years agobump Devel::PPPort version from 3.42 to 3.43.
Karen Etheridge [Sat, 15 Sep 2018 23:27:58 +0000 (16:27 -0700)]
bump Devel::PPPort version from 3.42 to 3.43.

Its tests were modified in commit 1ddd2f5f.

3 years agofix grammar in perldelta entry
Karen Etheridge [Sat, 15 Sep 2018 23:18:06 +0000 (16:18 -0700)]
fix grammar in perldelta entry