Skip Menu |
Report information
Id: 123057
Status: resolved
Priority: 0/
Queue: perl5

Owner: Nobody
Requestors: andreas.koenig.7os6VVqR [at] franz.ak.mind.de
Cc:
AdminCc:

Operating System: (no value)
PatchStatus: (no value)
Severity: low
Type: unknown
Perl Version: (no value)
Fixed In: (no value)

Attachments


Subject: Bleadperl v5.21.4-409-gef7999f breaks UNIFIEDSW/Finance-BankVal-UK-0.4.tar.gz
From: Andreas Koenig <andreas.koenig.7os6VVqR [...] franz.ak.mind.de>
To: perlbug [...] perl.org
Date: Sun, 26 Oct 2014 08:46:33 +0100
Download (untitled) / with headers
text/plain 3.6k
git bisect ---------- commit ef7999f1f1914f1a33743bbfa196e39f7f041445 Author: Father Chrysostomos <sprout@cpan.org> Date: Sun Oct 12 00:20:26 2014 -0700 Optimise my(@array)=split sample report ------------- http://www.cpantesters.org/cpan/report/c1f00f88-59b7-11e4-a867-5590bb36d621 perl -V ------- Summary of my perl5 (revision 5 version 21 subversion 5) configuration: Commit id: 47d3b731f074752fe0862ffdf333cfd3935f793a Platform: osname=linux, osvers=3.16-2-amd64, archname=x86_64-linux-thread-multi uname='linux k83 3.16-2-amd64 #1 smp debian 3.16.3-2 (2014-09-20) x86_64 gnulinux ' config_args='-Dprefix=/home/sand/src/perl/repoperls/installed-perls/perl/v5.21.4-483-g47d3b73/9980 -Dmyhostname=k83 -Dinstallusrbinperl=n -Uversiononly -Dusedevel -des -Ui_db -Duseithreads -Uuselongdouble -DDEBUGGING=-g' hint=recommended, useposix=true, d_sigaction=define useithreads=define, usemultiplicity=define use64bitint=define, use64bitall=define, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2', optimize='-O2 -g', cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include' ccversion='', gccversion='4.9.1', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16, longdblkind=3 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='cc', ldflags =' -fstack-protector-strong -L/usr/local/lib' libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc libc=libc-2.19.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='2.19' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E' cccdlflags='-fPIC', lddlflags='-shared -O2 -g -L/usr/local/lib -fstack-protector-strong' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS PERL_DONT_CREATE_GVSV PERL_HASH_FUNC_ONE_AT_A_TIME_HARD PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP PERL_NEW_COPY_ON_WRITE PERL_PRESERVE_IVUV PERL_USE_DEVEL USE_64_BIT_ALL USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME USE_PERLIO USE_PERL_ATOF USE_REENTRANT_API Built under linux Compiled at Oct 17 2014 00:04:21 %ENV: PERL5LIB="" PERL5OPT="" PERL5_CPANPLUS_IS_RUNNING="3790" PERL5_CPAN_IS_RUNNING="3790" PERL_MM_USE_DEFAULT="1" @INC: /home/sand/src/perl/repoperls/installed-perls/perl/v5.21.4-483-g47d3b73/9980/lib/site_perl/5.21.5/x86_64-linux-thread-multi /home/sand/src/perl/repoperls/installed-perls/perl/v5.21.4-483-g47d3b73/9980/lib/site_perl/5.21.5 /home/sand/src/perl/repoperls/installed-perls/perl/v5.21.4-483-g47d3b73/9980/lib/5.21.5/x86_64-linux-thread-multi /home/sand/src/perl/repoperls/installed-perls/perl/v5.21.4-483-g47d3b73/9980/lib/5.21.5 . -- andreas
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 1.2k
On Sun Oct 26 00:47:00 2014, andreas.koenig.7os6VVqR@franz.ak.mind.de wrote: Show quoted text
> git bisect > ---------- > commit ef7999f1f1914f1a33743bbfa196e39f7f041445 > Author: Father Chrysostomos <sprout@cpan.org> > Date: Sun Oct 12 00:20:26 2014 -0700 > > Optimise my(@array)=split > > sample report > ------------- > http://www.cpantesters.org/cpan/report/c1f00f88-59b7-11e4-a867- > 5590bb36d621 >
Confirmed. ef7999f causes a compilation failure in a situation where 5.20.1 does not. I have translated the code in the CPAN distribution which suffered the failure into a patch to t/op/chop.t. blead will experience a syntax error and compilation failure when you try to run that test file. ##### $ cd t;./perl harness -v op/chop.t;cd - Can't modify split in chomp at op/chop.t line 271, near "))" Execution of op/chop.t aborted due to compilation errors. Dubious, test returned 255 (wstat 65280, 0xff00) No subtests run Test Summary Report ------------------- op/chop.t (Wstat: 65280 Tests: 0 Failed: 0) Non-zero exit status: 255 Parse errors: No plan found in TAP output Files=1, Tests=0, 0 wallclock secs ( 0.01 usr + 0.00 sys = 0.01 CPU) Result: FAIL /home/jkeenan/gitwork/perl ##### Thank you very much. Jim Keenan -- James E Keenan (jkeenan@cpan.org)
Subject: 123057-Test-file-fails-to-compile.patch
From fa71c6b4167d3f81335fb9677c8b7169ccf87d88 Mon Sep 17 00:00:00 2001 From: James E Keenan <jkeenan@cpan.org> Date: Sun, 26 Oct 2014 10:14:40 -0400 Subject: [PATCH] Test file fails to compile. For: RT #123057 --- t/op/chop.t | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/t/op/chop.t b/t/op/chop.t index 3cf8735..884145c 100644 --- a/t/op/chop.t +++ b/t/op/chop.t @@ -6,7 +6,7 @@ BEGIN { require './test.pl'; require './charset_tools.pl'; } -plan tests => 143; +plan tests => 144; $_ = 'abc'; $c = foo(); @@ -263,3 +263,13 @@ foreach my $start (@chars) { is($result, "\x{fffffffffffffffe}", "chop even higher 'unicode' - result"); } } + +{ + my $expected = 99999; + my $input = "UserID\talpha $expected\n"; + my $uid = ''; + chomp(my @line = split (/ |\t/,$input)); + $uid = $line[-1]; + is($uid, $expected, + "RT #123057: chomp works as expected on split"); +} -- 1.9.1
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 788b
On Sun Oct 26 07:24:32 2014, jkeenan wrote: Show quoted text
> Confirmed. ef7999f causes a compilation failure in a situation where > 5.20.1 does not. > > I have translated the code in the CPAN distribution which suffered the > failure into a patch to t/op/chop.t. blead will experience a syntax > error and compilation failure when you try to run that test file.
Thank you for the test case. You’ve saved me time. It turns out this is an old bug in the optimisation, which I have ended up extending to more cases: $ perl5.8.7 -e '(@a = split//,$_)=1' # fine $ perl5.8.7 -e '(@a = split//,$x)=1' Can't modify split in list assignment at -e line 1, at EOF Execution of -e aborted due to compilation errors. Judging by the source code, it probably goes back to perl 3.0. -- Father Chrysostomos
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 1.5k
On Sun Oct 26 08:13:14 2014, sprout wrote: Show quoted text
> On Sun Oct 26 07:24:32 2014, jkeenan wrote:
> > Confirmed. ef7999f causes a compilation failure in a situation where > > 5.20.1 does not. > > > > I have translated the code in the CPAN distribution which suffered > > the > > failure into a patch to t/op/chop.t. blead will experience a syntax > > error and compilation failure when you try to run that test file.
> > Thank you for the test case. You’ve saved me time. It turns out this > is an old bug in the optimisation, which I have ended up extending to > more cases: > > $ perl5.8.7 -e '(@a = split//,$_)=1' # fine > $ perl5.8.7 -e '(@a = split//,$x)=1' > Can't modify split in list assignment at -e line 1, at EOF > Execution of -e aborted due to compilation errors. > > Judging by the source code, it probably goes back to perl 3.0.
As of commit e4e95921cd0fd085a5edf35ae358cd213529e55a, this appears to be resolved. ##### $ /home/jkeenan/gitwork/perl/perl -v |head -2 | tail -1 This is perl 5, version 21, subversion 6 (v5.21.6 (v5.21.5-117-ge4e9592)) built for x86_64-linux $ /home/jkeenan/gitwork/perl/perl -I/home/jkeenan/gitwork/perl/lib -Iblib/lib t/Finance-BankVal-UK.t \C is deprecated in regex; marked by <-- HERE in m/(\C <-- HERE )/ at /home/jkeenan/perl5/lib/perl5/URI/Escape.pm line 205. 1..7 ok 1 - use Finance::BankVal::UK; ok 2 - format validation ok 3 - sort code validation ok 4 - account validation ok 5 - user id validation ok 6 - PIN validation ok 7 - PIN validation ##### -- James E Keenan (jkeenan@cpan.org)


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org