In perl.git, the branch smoke-me/ilmari/remove-dollar-hat-encoding has been updated
<http://perl5.git.perl.org/perl.git/commitdiff/daf9b8fd72a6f44088404e203ef960f2d7f6c500?hp=dcc4160be400cc60abc8c62e6b4de2adb027140a> discards dcc4160be400cc60abc8c62e6b4de2adb027140a (commit) - Log ----------------------------------------------------------------- commit daf9b8fd72a6f44088404e203ef960f2d7f6c500 Author: Dagfinn Ilmari Mannsåker <[email protected]> Date: Thu Jun 1 18:16:56 2017 +0100 Make setting ${^ENCODING} to a defined value fatal ----------------------------------------------------------------------- Summary of changes: Cross/config.sh-arm-linux | 40 ++++++++-------- Cross/config.sh-arm-linux-n770 | 40 ++++++++-------- INSTALL | 28 +++++------ META.json | 2 +- META.yml | 2 +- NetWare/Makefile | 4 +- NetWare/config_H.wc | 10 ++-- Porting/bench.pl | 45 ++++++++++++----- Porting/config.sh | 42 ++++++++-------- Porting/config_H | 18 +++---- Porting/release_managers_guide.pod | 5 ++ README.haiku | 4 +- README.macosx | 8 ++-- README.os2 | 2 +- README.vms | 4 +- XSUB.h | 6 +-- dist/Module-CoreList/lib/Module/CoreList.pm | 56 +++++++++++++++++++++- .../lib/Module/CoreList/TieHashDelta.pm | 2 +- dist/Module-CoreList/lib/Module/CoreList/Utils.pm | 9 +++- doop.c | 4 +- dquote_inline.h | 6 +-- ebcdic_tables.h | 6 +-- ext/mro/mro.pm | 8 ++-- handy.h | 6 +-- hints/catamount.sh | 4 +- lib/B/Op_private.pm | 2 +- malloc_ctl.h | 4 +- mg.c | 10 ++-- patchlevel.h | 4 +- perlio.h | 6 +-- perliol.h | 6 +-- plan9/config.plan9 | 10 ++-- plan9/config_sh.sample | 38 +++++++-------- pp.c | 10 ++-- reentr.h | 4 +- regcharclass.h | 8 ++-- regen/ebcdic.pl | 6 +-- regen/reentr.pl | 4 +- regen/regcharclass.pl | 4 +- regen/unicode_constants.pl | 6 +-- sv.h | 4 ++ t/op/hash.t | 1 - time64.h | 4 +- time64_config.h | 6 +-- unicode_constants.h | 6 +-- utf8.h | 6 +-- win32/GNUmakefile | 2 +- win32/Makefile | 2 +- win32/makefile.mk | 2 +- zaphod32_hash.h | 16 ++++--- 50 files changed, 313 insertions(+), 219 deletions(-) diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux index f5cb28edd0..8af2fdcb86 100644 --- a/Cross/config.sh-arm-linux +++ b/Cross/config.sh-arm-linux @@ -32,12 +32,12 @@ alignbytes='4' ansi2knr='' aphostname='/bin/hostname' api_revision='5' -api_subversion='0' +api_subversion='1' api_version='27' -api_versionstring='5.27.0' +api_versionstring='5.27.1' ar='ar' -archlib='/usr/lib/perl5/5.27.0/armv4l-linux' -archlibexp='/usr/lib/perl5/5.27.0/armv4l-linux' +archlib='/usr/lib/perl5/5.27.1/armv4l-linux' +archlibexp='/usr/lib/perl5/5.27.1/armv4l-linux' archname64='' archname='armv4l-linux' archobjs='' @@ -56,7 +56,7 @@ castflags='0' cat='cat' cc='cc' cccdlflags='-fpic' -ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.27.0/armv4l-linux/CORE' +ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.27.1/armv4l-linux/CORE' ccflags='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='arm-linux-gcc' @@ -826,7 +826,7 @@ inc_version_list=' ' inc_version_list_init='0' incpath='' inews='' -installarchlib='./install_me_here/usr/lib/perl5/5.27.0/armv4l-linux' +installarchlib='./install_me_here/usr/lib/perl5/5.27.1/armv4l-linux' installbin='./install_me_here/usr/bin' installhtml1dir='' installhtml3dir='' @@ -834,13 +834,13 @@ installman1dir='./install_me_here/usr/share/man/man1' installman3dir='./install_me_here/usr/share/man/man3' installprefix='./install_me_here/usr' installprefixexp='./install_me_here/usr' -installprivlib='./install_me_here/usr/lib/perl5/5.27.0' +installprivlib='./install_me_here/usr/lib/perl5/5.27.1' installscript='./install_me_here/usr/bin' -installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' +installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.27.1/armv4l-linux' installsitebin='./install_me_here/usr/bin' installsitehtml1dir='' installsitehtml3dir='' -installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.27.0' +installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.27.1' installsiteman1dir='./install_me_here/usr/share/man/man1' installsiteman3dir='./install_me_here/usr/share/man/man3' installsitescript='./install_me_here/usr/bin' @@ -974,8 +974,8 @@ pmake='' pr='' prefix='/usr' prefixexp='/usr' -privlib='/usr/lib/perl5/5.27.0' -privlibexp='/usr/lib/perl5/5.27.0' +privlib='/usr/lib/perl5/5.27.1' +privlibexp='/usr/lib/perl5/5.27.1' procselfexe='"/proc/self/exe"' prototype='define' ptrsize='4' @@ -1040,17 +1040,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, ... [78 chars truncated] sig_size='68' signal_t='void' -sitearch='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' -sitearchexp='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' +sitearch='/usr/lib/perl5/site_perl/5.27.1/armv4l-linux' +sitearchexp='/usr/lib/perl5/site_perl/5.27.1/armv4l-linux' sitebin='/usr/bin' sitebinexp='/usr/bin' sitehtml1dir='' sitehtml1direxp='' sitehtml3dir='' sitehtml3direxp='' -sitelib='/usr/lib/perl5/site_perl/5.27.0' +sitelib='/usr/lib/perl5/site_perl/5.27.1' sitelib_stem='/usr/lib/perl5/site_perl' -sitelibexp='/usr/lib/perl5/site_perl/5.27.0' +sitelibexp='/usr/lib/perl5/site_perl/5.27.1' siteman1dir='/usr/share/man/man1' siteman1direxp='/usr/share/man/man1' siteman3dir='/usr/share/man/man3' @@ -1089,7 +1089,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/usr/include/string.h' submit='' -subversion='0' +subversion='1' sysman='/usr/share/man/man1' tail='' tar='' @@ -1181,8 +1181,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.27.0' -version_patchlevel_string='version 27 subversion 0' +version='5.27.1' +version_patchlevel_string='version 27 subversion 1' versiononly='undef' vi='' xlibpth='/usr/lib/386 /lib/386' @@ -1196,9 +1196,9 @@ config_args='' config_argc=0 PERL_REVISION=5 PERL_VERSION=27 -PERL_SUBVERSION=0 +PERL_SUBVERSION=1 PERL_API_REVISION=5 PERL_API_VERSION=27 -PERL_API_SUBVERSION=0 +PERL_API_SUBVERSION=1 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/Cross/config.sh-arm-linux-n770 b/Cross/config.sh-arm-linux-n770 index 5de3c1b63b..22c6dc1e22 100644 --- a/Cross/config.sh-arm-linux-n770 +++ b/Cross/config.sh-arm-linux-n770 @@ -32,12 +32,12 @@ alignbytes='4' ansi2knr='' aphostname='/bin/hostname' api_revision='5' -api_subversion='0' +api_subversion='1' api_version='27' -api_versionstring='5.27.0' +api_versionstring='5.27.1' ar='ar' -archlib='/usr/lib/perl5/5.27.0/armv4l-linux' -archlibexp='/usr/lib/perl5/5.27.0/armv4l-linux' +archlib='/usr/lib/perl5/5.27.1/armv4l-linux' +archlibexp='/usr/lib/perl5/5.27.1/armv4l-linux' archname64='' archname='armv4l-linux' archobjs='' @@ -55,7 +55,7 @@ castflags='0' cat='cat' cc='arm-none-linux-gnueabi-gcc' cccdlflags='-fpic' -ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.27.0/armv4l-linux/CORE' +ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5/5.27.1/armv4l-linux/CORE' ccflags='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='arm-linux-gcc' @@ -699,7 +699,7 @@ inc_version_list=' ' inc_version_list_init='0' incpath='' inews='' -installarchlib='./install_me_here/usr/lib/perl5/5.27.0/armv4l-linux' +installarchlib='./install_me_here/usr/lib/perl5/5.27.1/armv4l-linux' installbin='./install_me_here/usr/bin' installhtml1dir='' installhtml3dir='' @@ -707,13 +707,13 @@ installman1dir='./install_me_here/usr/share/man/man1' installman3dir='./install_me_here/usr/share/man/man3' installprefix='./install_me_here/usr' installprefixexp='./install_me_here/usr' -installprivlib='./install_me_here/usr/lib/perl5/5.27.0' +installprivlib='./install_me_here/usr/lib/perl5/5.27.1' installscript='./install_me_here/usr/bin' -installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' +installsitearch='./install_me_here/usr/lib/perl5/site_perl/5.27.1/armv4l-linux' installsitebin='./install_me_here/usr/bin' installsitehtml1dir='' installsitehtml3dir='' -installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.27.0' +installsitelib='./install_me_here/usr/lib/perl5/site_perl/5.27.1' installsiteman1dir='./install_me_here/usr/share/man/man1' installsiteman3dir='./install_me_here/usr/share/man/man3' installsitescript='./install_me_here/usr/bin' @@ -841,8 +841,8 @@ pmake='' pr='' prefix='/usr' prefixexp='/usr' -privlib='/usr/lib/perl5/5.27.0' -privlibexp='/usr/lib/perl5/5.27.0' +privlib='/usr/lib/perl5/5.27.1' +privlibexp='/usr/lib/perl5/5.27.1' procselfexe='"/proc/self/exe"' prototype='define' ptrsize='4' @@ -903,17 +903,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, ... [78 chars truncated] sig_size='68' signal_t='void' -sitearch='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' -sitearchexp='/usr/lib/perl5/site_perl/5.27.0/armv4l-linux' +sitearch='/usr/lib/perl5/site_perl/5.27.1/armv4l-linux' +sitearchexp='/usr/lib/perl5/site_perl/5.27.1/armv4l-linux' sitebin='/usr/bin' sitebinexp='/usr/bin' sitehtml1dir='' sitehtml1direxp='' sitehtml3dir='' sitehtml3direxp='' -sitelib='/usr/lib/perl5/site_perl/5.27.0' +sitelib='/usr/lib/perl5/site_perl/5.27.1' sitelib_stem='/usr/lib/perl5/site_perl' -sitelibexp='/usr/lib/perl5/site_perl/5.27.0' +sitelibexp='/usr/lib/perl5/site_perl/5.27.1' siteman1dir='/usr/share/man/man1' siteman1direxp='/usr/share/man/man1' siteman3dir='/usr/share/man/man3' @@ -950,7 +950,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/usr/include/string.h' submit='' -subversion='0' +subversion='1' sysman='/usr/share/man/man1' tail='' tar='' @@ -1035,8 +1035,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.27.0' -version_patchlevel_string='version 27 subversion 0' +version='5.27.1' +version_patchlevel_string='version 27 subversion 1' versiononly='undef' vi='' xlibpth='/usr/lib/386 /lib/386' @@ -1050,9 +1050,9 @@ config_args='' config_argc=0 PERL_REVISION=5 PERL_VERSION=27 -PERL_SUBVERSION=0 +PERL_SUBVERSION=1 PERL_API_REVISION=5 PERL_API_VERSION=27 -PERL_API_SUBVERSION=0 +PERL_API_SUBVERSION=1 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/INSTALL b/INSTALL index 1059508522..c60b37230e 100644 --- a/INSTALL +++ b/INSTALL @@ -609,7 +609,7 @@ The directories set up by Configure fall into three broad categories. =item Directories for the perl distribution -By default, Configure will use the following directories for 5.27.0. +By default, Configure will use the following directories for 5.27.1. $version is the full perl version number, including subversion, e.g. 5.12.3, and $archname is a string like sun4-sunos, determined by Configure. The full definitions of all Configure @@ -2472,7 +2472,7 @@ http://www.chiark.greenend.org.uk/~sgtatham/bugs.html =head1 Coexistence with earlier versions of perl 5 -Perl 5.27.0 is not binary compatible with earlier versions of Perl. +Perl 5.27.1 is not binary compatible with earlier versions of Perl. In other words, you will have to recompile your XS modules. In general, you can usually safely upgrade from one version of Perl @@ -2547,9 +2547,9 @@ won't interfere with another version. (The defaults guarantee this for libraries after 5.6.0, but not for executables. TODO?) One convenient way to do this is by using a separate prefix for each version, such as - sh Configure -Dprefix=/opt/perl5.27.0 + sh Configure -Dprefix=/opt/perl5.27.1 -and adding /opt/perl5.27.0/bin to the shell PATH variable. Such users +and adding /opt/perl5.27.1/bin to the shell PATH variable. Such users may also wish to add a symbolic link /usr/local/bin/perl so that scripts can still start with #!/usr/local/bin/perl. @@ -2564,11 +2564,11 @@ yet. =head2 Upgrading from 5.25.12 or earlier -B<Perl 5.27.0 may not be binary compatible with Perl 5.25.12 or +B<Perl 5.27.1 may not be binary compatible with Perl 5.25.12 or earlier Perl releases.> Perl modules having binary parts (meaning that a C compiler is used) will have to be recompiled to be -used with 5.27.0. If you find you do need to rebuild an extension with -5.27.0, you may safely do so without disturbing the older +used with 5.27.1. If you find you do need to rebuild an extension with +5.27.1, you may safely do so without disturbing the older installations. (See L<"Coexistence with earlier versions of perl 5"> above.) @@ -2601,15 +2601,15 @@ Firstly, the bare minimum to run this script print("$f\n"); } -in Linux with perl-5.27.0 is as follows (under $Config{prefix}): +in Linux with perl-5.27.1 is as follows (under $Config{prefix}): ./bin/perl - ./lib/perl5/5.27.0/strict.pm - ./lib/perl5/5.27.0/warnings.pm - ./lib/perl5/5.27.0/i686-linux/File/Glob.pm - ./lib/perl5/5.27.0/feature.pm - ./lib/perl5/5.27.0/XSLoader.pm - ./lib/perl5/5.27.0/i686-linux/auto/File/Glob/Glob.so + ./lib/perl5/5.27.1/strict.pm + ./lib/perl5/5.27.1/warnings.pm + ./lib/perl5/5.27.1/i686-linux/File/Glob.pm + ./lib/perl5/5.27.1/feature.pm + ./lib/perl5/5.27.1/XSLoader.pm + ./lib/perl5/5.27.1/i686-linux/auto/File/Glob/Glob.so Secondly, for perl-5.10.1, the Debian perl-base package contains 591 files, (of which 510 are for lib/unicore) totaling about 3.5MB in its diff --git a/META.json b/META.json index 53f0c48334..8b0b496f65 100644 --- a/META.json +++ b/META.json @@ -126,6 +126,6 @@ "url" : "http://perl5.git.perl.org/" } }, - "version" : "5.027000", + "version" : "5.027001", "x_serialization_backend" : "JSON::PP version 2.27400_02" } diff --git a/META.yml b/META.yml index 008e528057..a60e917fd8 100644 --- a/META.yml +++ b/META.yml @@ -113,5 +113,5 @@ resources: homepage: http://www.perl.org/ license: http://dev.perl.org/licenses/ repository: http://perl5.git.perl.org/ -version: '5.027000' +version: '5.027001' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff --git a/NetWare/Makefile b/NetWare/Makefile index 29f08b68ee..88409eb3c6 100644 --- a/NetWare/Makefile +++ b/NetWare/Makefile @@ -86,7 +86,7 @@ NLM_VERSION = 3,20,0 # Here comes the CW tools - TO BE FILLED TO BUILD WITH CW - -MODULE_DESC = "Perl 5.27.0 for NetWare" +MODULE_DESC = "Perl 5.27.1 for NetWare" CCTYPE = CodeWarrior C_COMPILER = mwccnlm -c CPP_COMPILER = mwccnlm @@ -462,7 +462,7 @@ INST_NW_TOP2 = $(INST_NW_DRV)\perl # versioned installation can be obtained by setting INST_TOP above to a # path that includes an arbitrary version string. # -INST_VER = \5.27.0 +INST_VER = \5.27.1 # # Comment this out if you DON'T want your perl installation to have diff --git a/NetWare/config_H.wc b/NetWare/config_H.wc index b8e2366a7b..263c1cd04e 100644 --- a/NetWare/config_H.wc +++ b/NetWare/config_H.wc @@ -1042,7 +1042,7 @@ * This symbol contains the ~name expanded version of ARCHLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define ARCHLIB "c:\\perl\\5.27.0\\lib\\NetWare-x86-multi-thread" /**/ +#define ARCHLIB "c:\\perl\\5.27.1\\lib\\NetWare-x86-multi-thread" /**/ /*#define ARCHLIB_EXP "" /**/ /* ARCHNAME: @@ -1073,8 +1073,8 @@ * This symbol is the filename expanded version of the BIN symbol, for * programs that do not want to deal with that at run-time. */ -#define BIN "c:\\perl\\5.27.0\\bin\\NetWare-x86-multi-thread" /**/ -#define BIN_EXP "c:\\perl\\5.27.0\\bin\\NetWare-x86-multi-thread" /**/ +#define BIN "c:\\perl\\5.27.1\\bin\\NetWare-x86-multi-thread" /**/ +#define BIN_EXP "c:\\perl\\5.27.1\\bin\\NetWare-x86-multi-thread" /**/ /* BYTEORDER: * This symbol holds the hexadecimal constant defined in byteorder, @@ -3088,7 +3088,7 @@ * This symbol contains the ~name expanded version of SITEARCH, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define SITEARCH "c:\\perl\\site\\5.27.0\\lib\\NetWare-x86-multi-thread" /**/ +#define SITEARCH "c:\\perl\\site\\5.27.1\\lib\\NetWare-x86-multi-thread" /**/ /*#define SITEARCH_EXP "" /**/ /* SITELIB: @@ -3111,7 +3111,7 @@ * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ -#define SITELIB "c:\\perl\\site\\5.27.0\\lib" /**/ +#define SITELIB "c:\\perl\\site\\5.27.1\\lib" /**/ /*#define SITELIB_EXP "" /**/ #define SITELIB_STEM "" /**/ diff --git a/Porting/bench.pl b/Porting/bench.pl index efff214e7a..840d7231d0 100755 --- a/Porting/bench.pl +++ b/Porting/bench.pl @@ -392,7 +392,7 @@ my %OPTS = ( 'norm=s' => \$OPTS{norm}, 'perlargs=s' => \$OPTS{perlargs}, 'raw' => \$OPTS{raw}, - 'read|r=s' => \$OPTS{read}, + 'read|r=s@' => \$OPTS{read}, 'show!' => \$OPTS{show}, 'sort=s' => \$OPTS{sort}, 'tests=s' => \$OPTS{tests}, @@ -679,25 +679,48 @@ sub do_grind { if $bisect_min > $bisect_max; } - if ($OPTS{read}) { - open my $in, '<:encoding(UTF-8)', $OPTS{read} - or die " Error: can't open '$OPTS{read}' for reading: $!\n"; + foreach my $file (@{$OPTS{read}}) { + open my $in, '<:encoding(UTF-8)', $file + or die " Error: can't open '$file' for reading: $!\n"; my $data = do { local $/; <$in> }; close $in; my $hash = JSON::PP::decode_json($data); if (int($FORMAT_VERSION) < int($hash->{version})) { die "Error: unsupported version $hash->{version} in file" - . "'$OPTS{read}' (too new)\n"; + . "'$file' (too new)\n"; } - ($loop_counts, $perls, $results, $tests, $order) = + my ($read_loop_counts, $read_perls, $read_results, $read_tests, $read_order) = @$hash{qw(loop_counts perls results tests order)}; + filter_tests($read_results); + filter_tests($read_tests); + if (!$read_order) { + $order = [ sort keys %$read_tests ]; + } + if (!$loop_counts) { + ($loop_counts, $perls, $results, $tests, $order) = + ($read_loop_counts, $read_perls, $read_results, $read_tests, $read_order); + filter_tests($results); + filter_tests($tests); + if (!$order) { + $order = [ sort keys %$tests ]; + } + } else { + my @have_keys= sort keys %$read_tests; + my @want_keys= sort keys %$tests; + + if ("@have_keys" ne "@want_keys" or + "@$read_loop_counts" ne "@$loop_counts") + { + die "tests run aren't the same, cant merge read files"; + } - filter_tests($results); - filter_tests($tests); - - if (!$order) { - $order = [ sort keys %$tests ]; + push @$perls, @{$hash->{perls}}; + foreach my $test (keys %{$hash->{results}}) { + foreach my $perl (keys %{$hash->{results}{$test}}) { + $results->{$test}{$perl}= $hash->{results}{$test}{$perl}; + } + } } } diff --git a/Porting/config.sh b/Porting/config.sh index 5e8abedf4e..a688d454c9 100644 --- a/Porting/config.sh +++ b/Porting/config.sh @@ -39,12 +39,12 @@ alignbytes='8' ansi2knr='' aphostname='/bin/hostname' api_revision='5' -api_subversion='0' +api_subversion='1' api_version='27' -api_versionstring='5.27.0' +api_versionstring='5.27.1' ar='ar' -archlib='/tmp/mblead/lib/perl5/5.27.0/darwin-2level' -archlibexp='/tmp/mblead/lib/perl5/5.27.0/darwin-2level' +archlib='/tmp/mblead/lib/perl5/5.27.1/darwin-2level' +archlibexp='/tmp/mblead/lib/perl5/5.27.1/darwin-2level' archname64='' archname='darwin-2level' archobjs='' @@ -846,7 +846,7 @@ incpath='' incpth='/usr/local/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeD ... [514 chars truncated] inews='' initialinstalllocation='/tmp/mblead/bin' -installarchlib='/tmp/mblead/lib/perl5/5.27.0/darwin-2level' +installarchlib='/tmp/mblead/lib/perl5/5.27.1/darwin-2level' installbin='/tmp/mblead/bin' installhtml1dir='' installhtml3dir='' @@ -854,13 +854,13 @@ installman1dir='/tmp/mblead/man/man1' installman3dir='/tmp/mblead/man/man3' installprefix='/tmp/mblead' installprefixexp='/tmp/mblead' -installprivlib='/tmp/mblead/lib/perl5/5.27.0' +installprivlib='/tmp/mblead/lib/perl5/5.27.1' installscript='/tmp/mblead/bin' -installsitearch='/tmp/mblead/lib/perl5/site_perl/5.27.0/darwin-2level' +installsitearch='/tmp/mblead/lib/perl5/site_perl/5.27.1/darwin-2level' installsitebin='/tmp/mblead/bin' installsitehtml1dir='' installsitehtml3dir='' -installsitelib='/tmp/mblead/lib/perl5/site_perl/5.27.0' +installsitelib='/tmp/mblead/lib/perl5/site_perl/5.27.1' installsiteman1dir='/tmp/mblead/man/man1' installsiteman3dir='/tmp/mblead/man/man3' installsitescript='/tmp/mblead/bin' @@ -985,7 +985,7 @@ perl_patchlevel='' perl_static_inline='static __inline__' perladmin='[email protected]' perllibs='-lpthread -ldl -lm -lutil -lc' -perlpath='/tmp/mblead/bin/perl5.27.0' +perlpath='/tmp/mblead/bin/perl5.27.1' pg='pg' phostname='hostname' pidtype='pid_t' @@ -994,8 +994,8 @@ pmake='' pr='' prefix='/tmp/mblead' prefixexp='/tmp/mblead' -privlib='/tmp/mblead/lib/perl5/5.27.0' -privlibexp='/tmp/mblead/lib/perl5/5.27.0' +privlib='/tmp/mblead/lib/perl5/5.27.1' +privlibexp='/tmp/mblead/lib/perl5/5.27.1' procselfexe='' prototype='define' ptrsize='8' @@ -1061,17 +1061,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 6, 0' sig_size='33' signal_t='void' -sitearch='/tmp/mblead/lib/perl5/site_perl/5.27.0/darwin-2level' -sitearchexp='/tmp/mblead/lib/perl5/site_perl/5.27.0/darwin-2level' +sitearch='/tmp/mblead/lib/perl5/site_perl/5.27.1/darwin-2level' +sitearchexp='/tmp/mblead/lib/perl5/site_perl/5.27.1/darwin-2level' sitebin='/tmp/mblead/bin' sitebinexp='/tmp/mblead/bin' sitehtml1dir='' sitehtml1direxp='' sitehtml3dir='' sitehtml3direxp='' -sitelib='/tmp/mblead/lib/perl5/site_perl/5.27.0' +sitelib='/tmp/mblead/lib/perl5/site_perl/5.27.1' sitelib_stem='/tmp/mblead/lib/perl5/site_perl' -sitelibexp='/tmp/mblead/lib/perl5/site_perl/5.27.0' +sitelibexp='/tmp/mblead/lib/perl5/site_perl/5.27.1' siteman1dir='/tmp/mblead/man/man1' siteman1direxp='/tmp/mblead/man/man1' siteman3dir='/tmp/mblead/man/man3' @@ -1097,7 +1097,7 @@ src='.' ssizetype='ssize_t' st_ino_sign='1' st_ino_size='8' -startperl='#!/tmp/mblead/bin/perl5.27.0' +startperl='#!/tmp/mblead/bin/perl5.27.1' startsh='#!/bin/sh' static_ext=' ' stdchar='char' @@ -1110,7 +1110,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/usr/include/string.h' submit='' -subversion='0' +subversion='1' sysman='/usr/share/man/man1' sysroot='' tail='' @@ -1209,8 +1209,8 @@ vendorprefix='' vendorprefixexp='' vendorscript='' vendorscriptexp='' -version='5.27.0' -version_patchlevel_string='version 27 subversion 0' +version='5.27.1' +version_patchlevel_string='version 27 subversion 1' versiononly='define' vi='' xlibpth='/usr/lib/386 /lib/386' @@ -1220,9 +1220,9 @@ zcat='' zip='zip' PERL_REVISION=5 PERL_VERSION=27 -PERL_SUBVERSION=0 +PERL_SUBVERSION=1 PERL_API_REVISION=5 PERL_API_VERSION=27 -PERL_API_SUBVERSION=0 +PERL_API_SUBVERSION=1 PERL_PATCHLEVEL='' PERL_CONFIG_SH=true diff --git a/Porting/config_H b/Porting/config_H index 2de48c65f1..9d2c4beaa9 100644 --- a/Porting/config_H +++ b/Porting/config_H @@ -960,8 +960,8 @@ * This symbol contains the ~name expanded version of ARCHLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define ARCHLIB "/pro/lib/perl5/5.27.0/i686-linux-64int-ld" /**/ -#define ARCHLIB_EXP "/pro/lib/perl5/5.27.0/i686-linux-64int-ld" /**/ +#define ARCHLIB "/pro/lib/perl5/5.27.1/i686-linux-64int-ld" /**/ +#define ARCHLIB_EXP "/pro/lib/perl5/5.27.1/i686-linux-64int-ld" /**/ /* ARCHNAME: * This symbol holds a string representing the architecture name. @@ -2068,8 +2068,8 @@ * This symbol contains the ~name expanded version of PRIVLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define PRIVLIB "/pro/lib/perl5/5.27.0" /**/ -#define PRIVLIB_EXP "/pro/lib/perl5/5.27.0" /**/ +#define PRIVLIB "/pro/lib/perl5/5.27.1" /**/ +#define PRIVLIB_EXP "/pro/lib/perl5/5.27.1" /**/ /* PTRSIZE: * This symbol contains the size of a pointer, so that the C preprocessor @@ -2119,8 +2119,8 @@ * This symbol contains the ~name expanded version of SITEARCH, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define SITEARCH "/pro/lib/perl5/site_perl/5.27.0/i686-linux-64int-ld" /**/ -#define SITEARCH_EXP "/pro/lib/perl5/site_perl/5.27.0/i686-linux-64int-ld" /**/ +#define SITEARCH "/pro/lib/perl5/site_perl/5.27.1/i686-linux-64int-ld" /**/ +#define SITEARCH_EXP "/pro/lib/perl5/site_perl/5.27.1/i686-linux-64int-ld" /**/ /* SITELIB: * This symbol contains the name of the private library for this package. @@ -2142,8 +2142,8 @@ * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ -#define SITELIB "/pro/lib/perl5/site_perl/5.27.0" /**/ -#define SITELIB_EXP "/pro/lib/perl5/site_perl/5.27.0" /**/ +#define SITELIB "/pro/lib/perl5/site_perl/5.27.1" /**/ +#define SITELIB_EXP "/pro/lib/perl5/site_perl/5.27.1" /**/ #define SITELIB_STEM "/pro/lib/perl5/site_perl" /**/ /* SSize_t: @@ -4282,7 +4282,7 @@ * script to make sure (one hopes) that it runs with perl and not * some shell. */ -#define STARTPERL "#!/pro/bin/perl5.27.0" /**/ +#define STARTPERL "#!/pro/bin/perl5.27.1" /**/ /* HAS_STDIO_STREAM_ARRAY: * This symbol, if defined, tells that there is an array diff --git a/Porting/release_managers_guide.pod b/Porting/release_managers_guide.pod index 678390ff33..9f8004c7e0 100644 --- a/Porting/release_managers_guide.pod +++ b/Porting/release_managers_guide.pod @@ -1040,6 +1040,11 @@ Bootstrap the CPAN client on the clean install: =head4 Install the Inline module with CPAN and test it +If you're using C<local::lib>, you should reset your environment before +performing these actions: + + $ unset PERL5LIB PERL_MB_OPT PERL_LOCAL_LIB_ROOT PERL_MM_OPT + Try installing a popular CPAN module that's reasonably complex and that has dependencies; for example: diff --git a/README.haiku b/README.haiku index 8937c781d9..46407e3765 100644 --- a/README.haiku +++ b/README.haiku @@ -22,9 +22,9 @@ The build procedure is completely standard: Make perl executable and create a symlink for libperl: chmod a+x /boot/common/bin/perl - cd /boot/common/lib; ln -s perl5/5.27.0/BePC-haiku/CORE/libperl.so . + cd /boot/common/lib; ln -s perl5/5.27.1/BePC-haiku/CORE/libperl.so . -Replace C<5.27.0> with your respective version of Perl. +Replace C<5.27.1> with your respective version of Perl. =head1 KNOWN PROBLEMS diff --git a/README.macosx b/README.macosx index 84549dbe1b..89893064a2 100644 --- a/README.macosx +++ b/README.macosx @@ -10,9 +10,9 @@ perlmacosx - Perl under Mac OS X This document briefly describes Perl under Mac OS X. - curl -O http://www.cpan.org/src/perl-5.27.0.tar.gz - tar -xzf perl-5.27.0.tar.gz - cd perl-5.27.0 + curl -O http://www.cpan.org/src/perl-5.27.1.tar.gz + tar -xzf perl-5.27.1.tar.gz + cd perl-5.27.1 ./Configure -des -Dprefix=/usr/local/ make make test @@ -20,7 +20,7 @@ This document briefly describes Perl under Mac OS X. =head1 DESCRIPTION -The latest Perl release (5.27.0 as of this writing) builds without changes +The latest Perl release (5.27.1 as of this writing) builds without changes under all versions of Mac OS X from 10.3 "Panther" onwards. In order to build your own version of Perl you will need 'make', diff --git a/README.os2 b/README.os2 index 89eefda08a..afe0d08145 100644 --- a/README.os2 +++ b/README.os2 @@ -619,7 +619,7 @@ C<set PERLLIB_PREFIX> in F<Config.sys>, see L</"C<PERLLIB_PREFIX>">. =item Additional Perl modules - unzip perl_ste.zip -d f:/perllib/lib/site_perl/5.27.0/ + unzip perl_ste.zip -d f:/perllib/lib/site_perl/5.27.1/ Same remark as above applies. Additionally, if this directory is not one of directories on @INC (and @INC is influenced by C<PERLLIB_PREFIX>), you diff --git a/README.vms b/README.vms index 0c460b4eed..cb0eb57c1b 100644 --- a/README.vms +++ b/README.vms @@ -142,11 +142,11 @@ You may need to set up a foreign symbol for the unpacking utility of choice. Once you have done so, use a command like the following to unpack the archive: - vmstar -xvf perl-5^.27^.0.tar + vmstar -xvf perl-5^.27^.1.tar Then set default to the top-level source directory like so: - set default [.perl-5^.27^.0] + set default [.perl-5^.27^.1] and proceed with configuration as described in the next section. diff --git a/XSUB.h b/XSUB.h index ec7b58db95..cff8204940 100644 --- a/XSUB.h +++ b/XSUB.h @@ -8,8 +8,8 @@ * */ -#ifndef _INC_PERL_XSUB_H -#define _INC_PERL_XSUB_H 1 +#ifndef PERL_XSUB_H_ +#define PERL_XSUB_H_ 1 /* first, some documentation for xsubpp-generated items */ @@ -703,7 +703,7 @@ Rethrows a previously caught exception. See L<perlguts/"Exception Handling">. # endif /* NO_XSLOCKS */ #endif /* PERL_IMPLICIT_SYS && !PERL_CORE */ -#endif /* _INC_PERL_XSUB_H */ /* include guard */ +#endif /* PERL_XSUB_H_ */ /* include guard */ /* * ex: set ts=8 sts=4 sw=4 et: diff --git a/dist/Module-CoreList/lib/Module/CoreList.pm b/dist/Module-CoreList/lib/Module/CoreList.pm index df1cf6a573..a419e52ab2 100644 --- a/dist/Module-CoreList/lib/Module/CoreList.pm +++ b/dist/Module-CoreList/lib/Module/CoreList.pm @@ -3,7 +3,7 @@ use strict; use vars qw/$VERSION %released %version %families %upstream %bug_tracker %deprecated %delta/; use version; -$VERSION = '5.20170620'; +$VERSION = '5.20170621'; sub _undelta { my ($delta) = @_; @@ -322,6 +322,7 @@ sub changes_between { 5.025012 => '2017-04-20', 5.026000 => '2017-05-30', 5.027000 => '2017-05-31', + 5.027001 => '2017-06-03', ); for my $version ( sort { $a <=> $b } keys %released ) { @@ -14127,6 +14128,52 @@ for my $version ( sort { $a <=> $b } keys %released ) { removed => { } }, + 5.027001 => { + delta_from => 5.027000, + changed => { + 'B::Op_private' => '5.027001', + 'Config' => '5.027001', + 'GDBM_File' => '1.16', + 'Locale::Codes' => '3.52', + 'Locale::Codes::Constants'=> '3.52', + 'Locale::Codes::Country'=> '3.52', + 'Locale::Codes::Country_Codes'=> '3.52', + 'Locale::Codes::Country_Retired'=> '3.52', + 'Locale::Codes::Currency'=> '3.52', + 'Locale::Codes::Currency_Codes'=> '3.52', + 'Locale::Codes::Currency_Retired'=> '3.52', + 'Locale::Codes::LangExt'=> '3.52', + 'Locale::Codes::LangExt_Codes'=> '3.52', + 'Locale::Codes::LangExt_Retired'=> '3.52', + 'Locale::Codes::LangFam'=> '3.52', + 'Locale::Codes::LangFam_Codes'=> '3.52', + 'Locale::Codes::LangFam_Retired'=> '3.52', + 'Locale::Codes::LangVar'=> '3.52', + 'Locale::Codes::LangVar_Codes'=> '3.52', + 'Locale::Codes::LangVar_Retired'=> '3.52', + 'Locale::Codes::Language'=> '3.52', + 'Locale::Codes::Language_Codes'=> '3.52', + 'Locale::Codes::Language_Retired'=> '3.52', + 'Locale::Codes::Script' => '3.52', + 'Locale::Codes::Script_Codes'=> '3.52', + 'Locale::Codes::Script_Retired'=> '3.52', + 'Locale::Country' => '3.52', + 'Locale::Currency' => '3.52', + 'Locale::Language' => '3.52', + 'Locale::Script' => '3.52', + 'XS::APItest' => '0.89', + '_charnames' => '1.45', + 'charnames' => '1.45', + 'if' => '0.0607', + 'mro' => '1.21', + 'threads' => '2.16', + 'threads::shared' => '1.57', + 'version' => '0.9918', + 'version::regex' => '0.9918', + }, + removed => { + } + }, ); sub is_core @@ -14893,6 +14940,13 @@ sub is_core removed => { } }, + 5.027001 => { + delta_from => 5.027, + changed => { + }, + removed => { + } + }, ); %deprecated = _undelta(\%deprecated); diff --git a/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm b/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm index 4ff750bbbb..a285ddc3cf 100644 --- a/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm +++ b/dist/Module-CoreList/lib/Module/CoreList/TieHashDelta.pm @@ -3,7 +3,7 @@ package Module::CoreList::TieHashDelta; use strict; use vars qw($VERSION); -$VERSION = '5.20170620'; +$VERSION = '5.20170621'; sub TIEHASH { my ($class, $changed, $removed, $parent) = @_; diff --git a/dist/Module-CoreList/lib/Module/CoreList/Utils.pm b/dist/Module-CoreList/lib/Module/CoreList/Utils.pm index c803dbf468..94540691c2 100644 --- a/dist/Module-CoreList/lib/Module/CoreList/Utils.pm +++ b/dist/Module-CoreList/lib/Module/CoreList/Utils.pm @@ -5,7 +5,7 @@ use warnings; use vars qw[$VERSION %utilities]; use Module::CoreList; -$VERSION = '5.20170620'; +$VERSION = '5.20170621'; sub utilities { my $perl = shift; @@ -1270,6 +1270,13 @@ my %delta = ( removed => { } }, + 5.027001 => { + delta_from => 5.027, + changed => { + }, + removed => { + } + }, ); %utilities = Module::CoreList::_undelta(\%delta); diff --git a/doop.c b/doop.c index 0dd4bdf603..0a546cce8f 100644 --- a/doop.c +++ b/doop.c @@ -927,8 +927,8 @@ Perl_do_vecset(pTHX_ SV *sv) /* some out-of-range errors have been deferred if/until the LV is * actually written to: f(vec($s,-1,8)) is not always fatal */ if (errflags) { - assert(!(errflags & ~(1|4))); - if (errflags & 1) + assert(!(errflags & ~(LVf_NEG_OFF|LVf_OUT_OF_RANGE))); + if (errflags & LVf_NEG_OFF) Perl_croak_nocontext("Negative offset to vec in lvalue context"); Perl_croak_nocontext("Out of memory!"); } diff --git a/dquote_inline.h b/dquote_inline.h index 1c7694d89f..f0ce9d6280 100644 --- a/dquote_inline.h +++ b/dquote_inline.h @@ -6,8 +6,8 @@ * License or the Artistic License, as specified in the README file. */ -#ifndef DQUOTE_INLINE_H /* Guard against nested #inclusion */ -#define DQUOTE_INLINE_H +#ifndef PERL_DQUOTE_INLINE_H_ /* Guard against nested #inclusion */ +#define PERL_DQUOTE_INLINE_H_ /* - regcurly - a little FSA that accepts {\d+,?\d*} @@ -64,4 +64,4 @@ S_form_short_octal_warning(pTHX_ (int) (s - sans_leading_zeros), sans_leading_zeros, *s); } -#endif /* DQUOTE_INLINE_H */ +#endif /* PERL_DQUOTE_INLINE_H_ */ diff --git a/ebcdic_tables.h b/ebcdic_tables.h index c36ab961f0..69ab372d11 100644 --- a/ebcdic_tables.h +++ b/ebcdic_tables.h @@ -5,8 +5,8 @@ */ -#ifndef H_EBCDIC_TABLES /* Guard against nested #includes */ -#define H_EBCDIC_TABLES 1 +#ifndef PERL_EBCDIC_TABLES_H_ /* Guard against nested #includes */ +#define PERL_EBCDIC_TABLES_H_ 1 /* This file contains definitions for various tables used in EBCDIC handling. * More info is in utfebcdic.h */ @@ -437,6 +437,6 @@ EXTCONST U8 PL_fold_latin1[] = { #endif /* EBCDIC 037 */ -#endif /* H_EBCDIC_TABLES */ +#endif /* PERL_EBCDIC_TABLES_H_ */ /* ex: set ro: */ diff --git a/ext/mro/mro.pm b/ext/mro/mro.pm index 92e8ca38cb..40aeb7a7b0 100644 --- a/ext/mro/mro.pm +++ b/ext/mro/mro.pm @@ -12,7 +12,10 @@ use warnings; # mro.pm versions < 1.00 reserved for MRO::Compat # for partial back-compat to 5.[68].x -our $VERSION = '1.20'; +our $VERSION = '1.21'; + +require XSLoader; +XSLoader::load('mro'); sub import { mro::set_mro(scalar(caller), $_[1]) if $_[1]; @@ -37,9 +40,6 @@ sub method { return; } -require XSLoader; -XSLoader::load('mro'); - 1; __END__ diff --git a/handy.h b/handy.h index 80f9cf4b76..c3848bfe65 100644 --- a/handy.h +++ b/handy.h @@ -11,8 +11,8 @@ /* IMPORTANT NOTE: Everything whose name begins with an underscore is for * internal core Perl use only. */ -#ifndef HANDY_H /* Guard against nested #inclusion */ -#define HANDY_H +#ifndef PERL_HANDY_H_ /* Guard against nested #inclusion */ +#define PERL_HANDY_H_ #if !defined(__STDC__) #ifdef NULL @@ -2521,7 +2521,7 @@ void Perl_mem_log_del_sv(const SV *sv, const char *filename, const int linenumbe #endif -#endif /* HANDY_H */ +#endif /* PERL_HANDY_H_ */ /* * ex: set ts=8 sts=4 sw=4 et: diff --git a/hints/catamount.sh b/hints/catamount.sh index 5ad2592284..0fba6e5a3f 100644 --- a/hints/catamount.sh +++ b/hints/catamount.sh @@ -31,11 +31,11 @@ # mkdir -p /opt/perl-catamount # mkdir -p /opt/perl-catamount/include # mkdir -p /opt/perl-catamount/lib -# mkdir -p /opt/perl-catamount/lib/perl5/5.27.0 +# mkdir -p /opt/perl-catamount/lib/perl5/5.27.1 # mkdir -p /opt/perl-catamount/bin # cp *.h /opt/perl-catamount/include # cp libperl.a /opt/perl-catamount/lib -# cp -pr lib/* /opt/perl-catamount/lib/perl5/5.27.0 +# cp -pr lib/* /opt/perl-catamount/lib/perl5/5.27.1 # cp miniperl perl run.sh cc.sh /opt/perl-catamount/lib # # With the headers and the libperl.a you can embed Perl to your Catamount diff --git a/lib/B/Op_private.pm b/lib/B/Op_private.pm index 09872cec30..bb51b327f0 100644 --- a/lib/B/Op_private.pm +++ b/lib/B/Op_private.pm @@ -118,7 +118,7 @@ package B::Op_private; our %bits; -our $VERSION = "5.027000"; +our $VERSION = "5.027001"; $bits{$_}{3} = 'OPpENTERSUB_AMPER' for qw(entersub rv2cv); $bits{$_}{6} = 'OPpENTERSUB_DB' for qw(entersub rv2cv); diff --git a/malloc_ctl.h b/malloc_ctl.h index d74637289b..0c72e9afcf 100644 --- a/malloc_ctl.h +++ b/malloc_ctl.h @@ -1,5 +1,5 @@ -#ifndef MALLOC_CTL_H -# define MALLOC_CTL_H +#ifndef PERL_MALLOC_CTL_H_ +# define PERL_MALLOC_CTL_H_ struct perl_mstats { UV *nfree; diff --git a/mg.c b/mg.c index b107974166..e50b755eca 100644 --- a/mg.c +++ b/mg.c @@ -2197,8 +2197,8 @@ Perl_magic_getsubstr(pTHX_ SV *sv, MAGIC *mg) const char * const tmps = SvPV_const(lsv,len); STRLEN offs = LvTARGOFF(sv); STRLEN rem = LvTARGLEN(sv); - const bool negoff = LvFLAGS(sv) & 1; - const bool negrem = LvFLAGS(sv) & 2; + const bool negoff = LvFLAGS(sv) & LVf_NEG_OFF; + const bool negrem = LvFLAGS(sv) & LVf_NEG_LEN; PERL_ARGS_ASSERT_MAGIC_GETSUBSTR; PERL_UNUSED_ARG(mg); @@ -2229,8 +2229,8 @@ Perl_magic_setsubstr(pTHX_ SV *sv, MAGIC *mg) SV * const lsv = LvTARG(sv); STRLEN lvoff = LvTARGOFF(sv); STRLEN lvlen = LvTARGLEN(sv); - const bool negoff = LvFLAGS(sv) & 1; - const bool neglen = LvFLAGS(sv) & 2; + const bool negoff = LvFLAGS(sv) & LVf_NEG_OFF; + const bool neglen = LvFLAGS(sv) & LVf_NEG_LEN; PERL_ARGS_ASSERT_MAGIC_SETSUBSTR; PERL_UNUSED_ARG(mg); @@ -2311,7 +2311,7 @@ Perl_magic_getvec(pTHX_ SV *sv, MAGIC *mg) PERL_UNUSED_ARG(mg); /* non-zero errflags implies deferred out-of-range condition */ - assert(!(errflags & ~(1|4))); + assert(!(errflags & ~(LVf_NEG_OFF|LVf_OUT_OF_RANGE))); sv_setuv(sv, errflags ? 0 : do_vecget(lsv, LvTARGOFF(sv), LvTARGLEN(sv))); return 0; diff --git a/patchlevel.h b/patchlevel.h index 69e8baa6d7..3a8cbb2f13 100644 --- a/patchlevel.h +++ b/patchlevel.h @@ -15,7 +15,7 @@ #define PERL_REVISION 5 /* age */ #define PERL_VERSION 27 /* epoch */ -#define PERL_SUBVERSION 0 /* generation */ +#define PERL_SUBVERSION 1 /* generation */ /* The following numbers describe the earliest compatible version of Perl ("compatibility" here being defined as sufficient binary/API @@ -36,7 +36,7 @@ */ #define PERL_API_REVISION 5 #define PERL_API_VERSION 27 -#define PERL_API_SUBVERSION 0 +#define PERL_API_SUBVERSION 1 /* XXX Note: The selection of non-default Configure options, such as -Duselonglong may invalidate these settings. Currently, Configure diff --git a/perlio.h b/perlio.h index 1a3d480f43..d515020618 100644 --- a/perlio.h +++ b/perlio.h @@ -8,8 +8,8 @@ * */ -#ifndef _PERLIO_H -#define _PERLIO_H +#ifndef PERLIO_H_ +#define PERLIO_H_ /* Interface for perl to IO functions. There is a hierarchy of Configure determined #define controls: @@ -336,7 +336,7 @@ typedef struct PerlIO_list_s PerlIO_list_t; #endif END_EXTERN_C -#endif /* _PERLIO_H */ +#endif /* PERLIO_H_ */ /* * ex: set ts=8 sts=4 sw=4 et: diff --git a/perliol.h b/perliol.h index d15c937150..40b4224e50 100644 --- a/perliol.h +++ b/perliol.h @@ -1,5 +1,5 @@ -#ifndef _PERLIOL_H -#define _PERLIOL_H +#ifndef PERLIOL_H_ +#define PERLIOL_H_ typedef struct { PerlIO_funcs *funcs; @@ -286,7 +286,7 @@ PERL_CALLCONV SSize_t PerlIOUnix_write(pTHX_ PerlIO *f, const void *vbuf, Size /* Utf8 */ PERL_CALLCONV IV PerlIOUtf8_pushed(pTHX_ PerlIO *f, const char *mode, SV *arg, PerlIO_funcs *tab); -#endif /* _PERLIOL_H */ +#endif /* PERLIOL_H_ */ /* * ex: set ts=8 sts=4 sw=4 et: diff --git a/plan9/config.plan9 b/plan9/config.plan9 index dc26dea293..15b00e010d 100644 --- a/plan9/config.plan9 +++ b/plan9/config.plan9 @@ -3329,8 +3329,8 @@ * This symbol contains the ~name expanded version of PRIVLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define PRIVLIB "/sys/lib/perl/5.27.0" /**/ -#define PRIVLIB_EXP "/sys/lib/perl/5.27.0" /**/ +#define PRIVLIB "/sys/lib/perl/5.27.1" /**/ +#define PRIVLIB_EXP "/sys/lib/perl/5.27.1" /**/ /* PTRSIZE: * This symbol contains the size of a pointer, so that the C preprocessor @@ -3457,9 +3457,9 @@ * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ -#define SITELIB "/sys/lib/perl/5.27.0/site_perl" /**/ -#define SITELIB_EXP "/sys/lib/perl/5.27.0/site_perl" /**/ -#define SITELIB_STEM "/sys/lib/perl/5.27.0/site_perl" /**/ +#define SITELIB "/sys/lib/perl/5.27.1/site_perl" /**/ +#define SITELIB_EXP "/sys/lib/perl/5.27.1/site_perl" /**/ +#define SITELIB_STEM "/sys/lib/perl/5.27.1/site_perl" /**/ /* Size_t_size: * This symbol holds the size of a Size_t in bytes. diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample index 2a83a57588..c5c0ab3c61 100644 --- a/plan9/config_sh.sample +++ b/plan9/config_sh.sample @@ -32,12 +32,12 @@ alignbytes='4' ansi2knr='' aphostname='/bin/uname -n' api_revision='5' -api_subversion='0' +api_subversion='1' api_version='27' -api_versionstring='5.27.0' +api_versionstring='5.27.1' ar='ar' -archlib='/sys/lib/perl5/5.27.0/386' -archlibexp='/sys/lib/perl5/5.27.0/386' +archlib='/sys/lib/perl5/5.27.1/386' +archlibexp='/sys/lib/perl5/5.27.1/386' archname64='' archname='386' archobjs='' @@ -820,17 +820,17 @@ inc_version_list=' ' inc_version_list_init='0' incpath='' inews='' -installarchlib='/sys/lib/perl/5.27.0/386' +installarchlib='/sys/lib/perl/5.27.1/386' installbin='/usr/bin' installman1dir='/sys/man/1pub' installman3dir='/sys/man/2pub' installprefix='/usr' installprefixexp='/usr' -installprivlib='/sys/lib/perl/5.27.0' +installprivlib='/sys/lib/perl/5.27.1' installscript='/usr/bin' -installsitearch='/sys/lib/perl/5.27.0/site_perl/386' +installsitearch='/sys/lib/perl/5.27.1/site_perl/386' installsitebin='/usr/bin' -installsitelib='/sys/lib/perl/5.27.0/site_perl' +installsitelib='/sys/lib/perl/5.27.1/site_perl' installstyle='lib/perl5' installusrbinperl='undef' installvendorarch='' @@ -955,8 +955,8 @@ pmake='' pr='' prefix='/usr' prefixexp='/usr' -privlib='/sys/lib/perl/5.27.0' -privlibexp='/sys/lib/perl/5.27.0' +privlib='/sys/lib/perl/5.27.1' +privlibexp='/sys/lib/perl/5.27.1' procselfexe='' prototype='define' ptrsize='4' @@ -1021,13 +1021,13 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, ... [7 chars truncated] sig_size='50' signal_t='void' -sitearch='/sys/lib/perl/5.27.0/site_perl/386' +sitearch='/sys/lib/perl/5.27.1/site_perl/386' sitearchexp='/sys/lib/perl/site_perl/386' sitebin='/usr/bin' sitebinexp='/usr/bin' -sitelib='/sys/lib/perl/5.27.0/site_perl' -sitelib_stem='/sys/lib/perl/5.27.0/site_perl' -sitelibexp='/sys/lib/perl/5.27.0/site_perl' +sitelib='/sys/lib/perl/5.27.1/site_perl' +sitelib_stem='/sys/lib/perl/5.27.1/site_perl' +sitelibexp='/sys/lib/perl/5.27.1/site_perl' siteprefix='/usr' siteprefixexp='/usr' sizesize='4' @@ -1060,7 +1060,7 @@ stdio_stream_array='' strerror_r_proto='0' strings='/sys/include/ape/string.h' submit='' -subversion='0' +subversion='1' sysman='/sys/man/1pub' tail='' tar='' @@ -1142,8 +1142,8 @@ vendorlib_stem='' vendorlibexp='' vendorprefix='' vendorprefixexp='' -version='5.27.0' -version_patchlevel_string='version 27 subversion 0' +version='5.27.1' +version_patchlevel_string='version 27 subversion 1' versiononly='undef' vi='' xlibpth='' @@ -1157,9 +1157,9 @@ config_args='' config_argc=0 PERL_REVISION=5 PERL_VERSION=27 -PERL_SUBVERSION=0 +PERL_SUBVERSION=1 PERL_API_REVISION=5 PERL_API_VERSION=27 -PERL_API_SUBVERSION=0 +PERL_API_SUBVERSION=1 PERL_PATCHLEVEL= PERL_CONFIG_SH=true diff --git a/pp.c b/pp.c index 0c31062c3a..6df21011af 100644 --- a/pp.c +++ b/pp.c @@ -3377,11 +3377,11 @@ PP(pp_substr) LvTARGOFF(ret) = pos1_is_uv || pos1_iv >= 0 ? (STRLEN)(UV)pos1_iv - : (LvFLAGS(ret) |= 1, (STRLEN)(UV)-pos1_iv); + : (LvFLAGS(ret) |= LVf_NEG_OFF, (STRLEN)(UV)-pos1_iv); LvTARGLEN(ret) = len_is_uv || len_iv > 0 ? (STRLEN)(UV)len_iv - : (LvFLAGS(ret) |= 2, (STRLEN)(UV)-len_iv); + : (LvFLAGS(ret) |= LVf_NEG_LEN, (STRLEN)(UV)-len_iv); PUSHs(ret); /* avoid SvSETMAGIC here */ RETURN; @@ -3488,12 +3488,12 @@ PP(pp_vec) /* avoid a large UV being wrapped to a negative value */ if (SvIOK_UV(offsetsv) && SvUVX(offsetsv) > (UV)IV_MAX) - errflags = 4; /* out of range */ + errflags = LVf_OUT_OF_RANGE; else if (iv < 0) - errflags = (1|4); /* negative offset, out of range */ + errflags = (LVf_NEG_OFF|LVf_OUT_OF_RANGE); #if PTRSIZE < IVSIZE else if (iv > Size_t_MAX) - errflags = 4; /* out of range */ + errflags = LVf_OUT_OF_RANGE; #endif else offset = (STRLEN)iv; diff --git a/reentr.h b/reentr.h index b1f3c80615..b220b1ee53 100644 --- a/reentr.h +++ b/reentr.h @@ -12,8 +12,8 @@ * Any changes made here will be lost! */ -#ifndef REENTR_H -#define REENTR_H +#ifndef PERL_REENTR_H_ +#define PERL_REENTR_H_ /* If compiling for a threaded perl, we will macro-wrap the system/library * interfaces (e.g. getpwent()) which have threaded versions diff --git a/regcharclass.h b/regcharclass.h index ff00207ec0..787957414c 100644 --- a/regcharclass.h +++ b/regcharclass.h @@ -15,8 +15,8 @@ */ -#ifndef H_REGCHARCLASS /* Guard against nested #includes */ -#define H_REGCHARCLASS 1 +#ifndef PERL_REGCHARCLASS_H_ /* Guard against nested #includes */ +#define PERL_REGCHARCLASS_H_ #if 'A' == 65 /* ASCII/Latin1 */ /* @@ -1851,7 +1851,7 @@ #endif /* EBCDIC 037 */ -#endif /* H_REGCHARCLASS */ +#endif /* PERL_REGCHARCLASS_H_ */ /* Generated from: * 59e717586b720a821ee0d7397679d5322e38b49f6fb7840545aedf669c733b70 lib/Unicode/UCD.pm @@ -1900,6 +1900,6 @@ * 717985d5fe0830f5b72ca21287a7d9f15ba6a383c29fbd3c47231d5f63edb68b lib/unicore/mktables * cdecb300baad839a6f62791229f551a4fa33f3cbdca08e378dc976466354e778 lib/unicore/version * 913d2f93f3cb6cdf1664db888bf840bc4eb074eef824e082fceda24a9445e60c regen/charset_translations.pl - * c468aea5062ef84422219d74e83b6f3216f2823544b445f53ee1af71deeb2044 regen/regcharclass.pl + * 9ea6338945a7d70e5ea4b31ac7856c0b521df96be002e94b4b3b7d31debbf3ab regen/regcharclass.pl * 393f8d882713a3ba227351ad0f00ea4839fda74fcf77dcd1cdf31519925adba5 regen/regcharclass_multi_char_folds.pl * ex: set ro: */ diff --git a/regen/ebcdic.pl b/regen/ebcdic.pl index a3e049d2ad..5fd4ecda14 100644 --- a/regen/ebcdic.pl +++ b/regen/ebcdic.pl @@ -46,8 +46,8 @@ sub output_table ($$;$) { print $out_fh <<END; -#ifndef H_EBCDIC_TABLES /* Guard against nested #includes */ -#define H_EBCDIC_TABLES 1 +#ifndef PERL_EBCDIC_TABLES_H_ /* Guard against nested #includes */ +#define PERL_EBCDIC_TABLES_H_ 1 /* This file contains definitions for various tables used in EBCDIC handling. * More info is in utfebcdic.h */ @@ -222,6 +222,6 @@ END print $out_fh get_conditional_compile_line_end(); } -print $out_fh "\n#endif /* H_EBCDIC_TABLES */\n"; +print $out_fh "\n#endif /* PERL_EBCDIC_TABLES_H_ */\n"; read_only_bottom_close_and_rename($out_fh); diff --git a/regen/reentr.pl b/regen/reentr.pl index b73193ce56..1fc14e21ca 100644 --- a/regen/reentr.pl +++ b/regen/reentr.pl @@ -62,8 +62,8 @@ sub open_print_header { my $h = open_print_header('reentr.h'); print $h <<EOF; -#ifndef REENTR_H -#define REENTR_H +#ifndef PERL_REENTR_H_ +#define PERL_REENTR_H_ /* If compiling for a threaded perl, we will macro-wrap the system/library * interfaces (e.g. getpwent()) which have threaded versions diff --git a/regen/regcharclass.pl b/regen/regcharclass.pl index 510fb8931d..83925e19d5 100755 --- a/regen/regcharclass.pl +++ b/regen/regcharclass.pl @@ -1364,7 +1364,7 @@ WARNING: These macros are for internal Perl core use only, and may be changed or removed without notice. EOF ); - print $out_fh "\n#ifndef H_REGCHARCLASS /* Guard against nested #includes */\n#define H_REGCHARCLASS 1\n"; + print $out_fh "\n#ifndef PERL_REGCHARCLASS_H_ /* Guard against nested #includes */\n#define PERL_REGCHARCLASS_H_\n"; my ( $op, $title, @txt, @types, %mods ); my $doit= sub ($) { @@ -1452,7 +1452,7 @@ EOF print $out_fh get_conditional_compile_line_end(); } - print $out_fh "\n#endif /* H_REGCHARCLASS */\n"; + print $out_fh "\n#endif /* PERL_REGCHARCLASS_H_ */\n"; if($path eq '-') { print $out_fh "/* ex: set ro: */\n"; diff --git a/regen/unicode_constants.pl b/regen/unicode_constants.pl index cbe317926c..64ae84a649 100644 --- a/regen/unicode_constants.pl +++ b/regen/unicode_constants.pl @@ -12,8 +12,8 @@ my $out_fh = open_new('unicode_constants.h', '>', print $out_fh <<END; -#ifndef H_UNICODE_CONSTANTS /* Guard against nested #includes */ -#define H_UNICODE_CONSTANTS 1 +#ifndef PERL_UNICODE_CONSTANTS_H_ /* Guard against nested #includes */ +#define PERL_UNICODE_CONSTANTS_H_ 1 /* This file contains #defines for the version of Unicode being used and * various Unicode code points. The values the code point macros expand to @@ -198,7 +198,7 @@ if (@cwcm) { } } -print $out_fh "\n#endif /* H_UNICODE_CONSTANTS */\n"; +print $out_fh "\n#endif /* PERL_UNICODE_CONSTANTS_H_ */\n"; read_only_bottom_close_and_rename($out_fh); diff --git a/sv.h b/sv.h index 51e9b0ba66..71c494b367 100644 --- a/sv.h +++ b/sv.h @@ -1402,6 +1402,10 @@ object type. Exposed to perl code via Internals::SvREADONLY(). #define LvTARGLEN(sv) ((XPVLV*) SvANY(sv))->xlv_targlen #define LvFLAGS(sv) ((XPVLV*) SvANY(sv))->xlv_flags +#define LVf_NEG_OFF 0x1 +#define LVf_NEG_LEN 0x2 +#define LVf_OUT_OF_RANGE 0x4 + #define IoIFP(sv) (sv)->sv_u.svu_fp #define IoOFP(sv) ((XPVIO*) SvANY(sv))->xio_ofp #define IoDIRP(sv) ((XPVIO*) SvANY(sv))->xio_dirp diff --git a/t/op/hash.t b/t/op/hash.t index 0551e03ca2..dc8fcc9871 100644 --- a/t/op/hash.t +++ b/t/op/hash.t @@ -179,7 +179,6 @@ sub torture_hash { # Each time this will get emptied then repopulated. If the fill isn't reset # when the hash is emptied, the used count will likely exceed the array - use Devel::Peek; %$h3 = %$h2; is(join(",", sort keys %$h3),join(",",sort keys %$h2),"$desc (+$count copy) has same keys"); my (undef, $total3) = validate_hash("$desc (+$count copy)", $h3); diff --git a/time64.h b/time64.h index 78efc73489..c0657665e9 100644 --- a/time64.h +++ b/time64.h @@ -1,8 +1,8 @@ #include <time.h> #include "time64_config.h" -#ifndef TIME64_H -# define TIME64_H +#ifndef PERL_TIME64_H_ +# define PERL_TIME64_H_ /* Set our custom types */ diff --git a/time64_config.h b/time64_config.h index 42cc12c88e..0bebebb53c 100644 --- a/time64_config.h +++ b/time64_config.h @@ -1,5 +1,5 @@ -#ifndef TIME64_CONFIG_H -# define TIME64_CONFIG_H +#ifndef PERL_TIME64_CONFIG_H_ +# define PERL_TIME64_CONFIG_H_ /* Configuration ------------- @@ -82,4 +82,4 @@ #define SYSTEM_GMTIME_MAX CAT2(GMTIME_MAX,.0) #define SYSTEM_GMTIME_MIN CAT2(GMTIME_MIN,.0) -#endif /* TIME64_CONFIG_H */ +#endif /* PERL_TIME64_CONFIG_H_ */ diff --git a/unicode_constants.h b/unicode_constants.h index 1c0e62e356..318b9015ae 100644 --- a/unicode_constants.h +++ b/unicode_constants.h @@ -5,8 +5,8 @@ */ -#ifndef H_UNICODE_CONSTANTS /* Guard against nested #includes */ -#define H_UNICODE_CONSTANTS 1 +#ifndef PERL_UNICODE_CONSTANTS_H_ /* Guard against nested #includes */ +#define PERL_UNICODE_CONSTANTS_H_ 1 /* This file contains #defines for the version of Unicode being used and * various Unicode code points. The values the code point macros expand to @@ -182,6 +182,6 @@ bytes. /* The highest code point that has any type of case change */ #define HIGHEST_CASE_CHANGING_CP_FOR_USE_ONLY_BY_UTF8_DOT_C 0x1E943 -#endif /* H_UNICODE_CONSTANTS */ +#endif /* PERL_UNICODE_CONSTANTS_H_ */ /* ex: set ro: */ diff --git a/utf8.h b/utf8.h index 7b2ba14aa9..41db2f4b93 100644 --- a/utf8.h +++ b/utf8.h @@ -14,8 +14,8 @@ * */ -#ifndef H_UTF8 /* Guard against recursive inclusion */ -#define H_UTF8 1 +#ifndef PERL_UTF8_H_ /* Guard against recursive inclusion */ +#define PERL_UTF8_H_ 1 /* Use UTF-8 as the default script encoding? * Turning this on will break scripts having non-UTF-8 binary @@ -1169,7 +1169,7 @@ L</is_utf8_string_loclen_flags> to check entire strings. * retained solely for backwards compatibility */ #define IS_UTF8_CHAR(p, n) (isUTF8_CHAR(p, (p) + (n)) == n) -#endif /* H_UTF8 */ +#endif /* PERL_UTF8_H_ */ /* * ex: set ts=8 sts=4 sw=4 et: diff --git a/win32/GNUmakefile b/win32/GNUmakefile index 7ae6d847e5..8cbfd5de7f 100644 --- a/win32/GNUmakefile +++ b/win32/GNUmakefile @@ -63,7 +63,7 @@ INST_TOP := $(INST_DRV)\perl # versioned installation can be obtained by setting INST_TOP above to a # path that includes an arbitrary version string. # -#INST_VER := \5.27.0 +#INST_VER := \5.27.1 # # Comment this out if you DON'T want your perl installation to have diff --git a/win32/Makefile b/win32/Makefile index 397464770c..59d991828c 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -38,7 +38,7 @@ INST_TOP = $(INST_DRV)\perl # versioned installation can be obtained by setting INST_TOP above to a # path that includes an arbitrary version string. # -#INST_VER = \5.27.0 +#INST_VER = \5.27.1 # # Comment this out if you DON'T want your perl installation to have diff --git a/win32/makefile.mk b/win32/makefile.mk index de670b57c0..88d197ec34 100644 --- a/win32/makefile.mk +++ b/win32/makefile.mk @@ -44,7 +44,7 @@ INST_TOP *= $(INST_DRV)\perl # versioned installation can be obtained by setting INST_TOP above to a # path that includes an arbitrary version string. # -#INST_VER *= \5.27.0 +#INST_VER *= \5.27.1 # # Comment this out if you DON'T want your perl installation to have diff --git a/zaphod32_hash.h b/zaphod32_hash.h index 9ce1a63ad1..ec091f723c 100644 --- a/zaphod32_hash.h +++ b/zaphod32_hash.h @@ -154,6 +154,7 @@ void zaphod32_seed_state ( ZAPHOD32_SCRAMBLE32(state[0],0x9fade23b); ZAPHOD32_SCRAMBLE32(state[1],0xaa6f908d); ZAPHOD32_SCRAMBLE32(state[2],0xcdf6b72d); + /* now that we have scrambled we do some mixing to avalanche the * state bits to gether */ ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE A 1/4"); @@ -165,12 +166,13 @@ void zaphod32_seed_state ( ZAPHOD32_SCRAMBLE32(state[0],0xc95d22a9); ZAPHOD32_SCRAMBLE32(state[1],0x8497242b); ZAPHOD32_SCRAMBLE32(state[2],0x9c5cc4e9); - /* and one final mix */ - ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE 3/3"); - ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE 3/3"); - ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE 3/3"); - ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE 3/3"); - ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE 3/3"); + + /* and a thorough final mix */ + ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE B 1/5"); + ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE B 2/5"); + ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE B 3/5"); + ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE B 4/5"); + ZAPHOD32_MIX(state[0],state[1],state[2],"ZAPHOD32 SEED-STATE B 5/5"); } @@ -277,7 +279,7 @@ ZAPHOD32_STATIC_INLINE U32 zaphod32_hash( const U8 *key, const STRLEN key_len ) { - U32 state[1796]; + U32 state[3]; zaphod32_seed_state(seed_ch,(U8*)state); return zaphod32_hash_with_state((U8*)state,key,key_len); } -- Perl5 Master Repository
