Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bleadperl v5.25.7-12-ge03e82a breaks TDRUGEON/List-Pairwise-1.03.tar.gz #15776

Closed
p5pRT opened this issue Dec 21, 2016 · 18 comments
Closed

Bleadperl v5.25.7-12-ge03e82a breaks TDRUGEON/List-Pairwise-1.03.tar.gz #15776

p5pRT opened this issue Dec 21, 2016 · 18 comments

Comments

@p5pRT
Copy link

p5pRT commented Dec 21, 2016

Migrated from rt.perl.org#130385 (status was 'resolved')

Searchable as RT130385$

@p5pRT
Copy link
Author

p5pRT commented Dec 21, 2016

From @andk

Apologies if this is a duplicate for you, I cannot see that this BBC
report I wrote on 2016-11-25 ever made it to perlbug. Thanks to Slaven
for bringing this to my attention.

bisect


commit e03e82a
Author​: David Mitchell <davem@​iabyn.com>
Date​: Thu Nov 24 09​:40​:44 2016 +0000

  add sv_set_undef() API function

diagnostics


PERL_DL_NONLAZY=1 "/home/sand/src/perl/repoperls/installed-perls/perl/v5.25.7-12-ge03e82a/109d/bin/perl" "-MExtUtils​::Command​::MM" "-MTest​::Harness" "-e" "undef *Test​::Harness​::Switches; test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/*.t
t/01load.t .... ok
Not a GLOB reference at /tmp/loop_over_bdir-22759-Bcp_nV/List-Pairwise-1.03-0/blib/lib/List/Pairwise.pm line 50.
# Looks like your test exited with 255 just after 2.
t/context.t ...
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 22/24 subtests
Not a GLOB reference at /tmp/loop_over_bdir-22759-Bcp_nV/List-Pairwise-1.03-0/blib/lib/List/Pairwise.pm line 158.
# Looks like your test exited with 255 just after 5.
t/firstp.t ....
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 22/27 subtests
Not a GLOB reference at /tmp/loop_over_bdir-22759-Bcp_nV/List-Pairwise-1.03-0/blib/lib/List/Pairwise.pm line 102.
# Looks like your test exited with 255 just after 1.
t/grepp.t .....
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 26/27 subtests
Not a GLOB reference at /tmp/loop_over_bdir-22759-Bcp_nV/List-Pairwise-1.03-0/blib/lib/List/Pairwise.pm line 187.
# Looks like your test exited with 255 just after 5.
t/lastp.t .....
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 22/27 subtests
t/listutil.t .. ok
Not a GLOB reference at /tmp/loop_over_bdir-22759-Bcp_nV/List-Pairwise-1.03-0/blib/lib/List/Pairwise.pm line 50.
# Looks like your test exited with 255 just after 1.
t/mapp.t ......
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 35/36 subtests
t/pair.t ...... ok
t/warn1.t ..... ok
t/warn2.t ..... ok
t/warn3.t ..... skipped​: $a and $b warnings exemption
t/warn4.t ..... ok

Test Summary Report


t/context.t (Wstat​: 65280 Tests​: 2 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 24 tests but ran 2.
t/firstp.t (Wstat​: 65280 Tests​: 5 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 27 tests but ran 5.
t/grepp.t (Wstat​: 65280 Tests​: 1 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 27 tests but ran 1.
t/lastp.t (Wstat​: 65280 Tests​: 5 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 27 tests but ran 5.
t/mapp.t (Wstat​: 65280 Tests​: 1 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 36 tests but ran 1.
Files=12, Tests=56, 2 wallclock secs ( 0.06 usr 0.01 sys + 0.68 cusr 0.07 csys = 0.82 CPU)
Result​: FAIL

perl -V


Summary of my perl5 (revision 5 version 25 subversion 8) configuration​:
  Derived from​: e03e82a
  Platform​:
  osname=linux
  osvers=4.7.0-1-amd64
  archname=x86_64-linux-thread-multi-ld
  uname='linux k83 4.7.0-1-amd64 #1 smp debian 4.7.8-1 (2016-10-19) x86_64 gnulinux '
  config_args='-Dprefix=/home/sand/src/perl/repoperls/installed-perls/perl/v5.25.7-12-ge03e82a/109d -Dmyhostname=k83 -Dinstallusrbinperl=n -Uversiononly -Dusedevel -des -Ui_db -Dlibswanted=cl pthread socket inet nsl gdbm dbm malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat -Duseithreads -Duselongdouble -DDEBUGGING=-g'
  hint=recommended
  useposix=true
  d_sigaction=define
  useithreads=define
  usemultiplicity=define
  use64bitint=define
  use64bitall=define
  uselongdouble=define
  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'
  optimize='-O2 -g'
  cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
  ccversion=''
  gccversion='6.2.0 20160830'
  gccosandvers=''
  intsize=4
  longsize=8
  ptrsize=8
  doublesize=8
  byteorder=12345678
  doublekind=3
  d_longlong=define
  longlongsize=8
  d_longdbl=define
  longdblsize=16
  longdblkind=3
  ivtype='long'
  ivsize=8
  nvtype='long double'
  nvsize=16
  Off_t='off_t'
  lseeksize=8
  alignbytes=16
  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/6/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=-lpthread -lnsl -lgdbm -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
  perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  libc=libc-2.24.so
  so=so
  useshrplib=false
  libperl=libperl.a
  gnulibc_version='2.24'
  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_COPY_ON_WRITE
  PERL_DONT_CREATE_GVSV
  PERL_HASH_FUNC_ONE_AT_A_TIME_HARD
  PERL_IMPLICIT_CONTEXT
  PERL_MALLOC_WRAP
  PERL_OP_PARENT
  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_LONG_DOUBLE
  USE_PERLIO
  USE_PERL_ATOF
  USE_REENTRANT_API
  Locally applied patches​:
  uncommitted-changes
  Built under linux
  Compiled at Nov 24 2016 14​:59​:17
  @​INC​:
  /home/sand/src/perl/repoperls/installed-perls/perl/v5.25.7-12-ge03e82a/109d/lib/site_perl/5.25.8/x86_64-linux-thread-multi-ld
  /home/sand/src/perl/repoperls/installed-perls/perl/v5.25.7-12-ge03e82a/109d/lib/site_perl/5.25.8
  /home/sand/src/perl/repoperls/installed-perls/perl/v5.25.7-12-ge03e82a/109d/lib/5.25.8/x86_64-linux-thread-multi-ld
  /home/sand/src/perl/repoperls/installed-perls/perl/v5.25.7-12-ge03e82a/109d/lib/5.25.8
  .

--
andreas

@p5pRT
Copy link
Author

p5pRT commented Dec 25, 2016

From @iabyn

On Wed, Dec 21, 2016 at 02​:14​:55PM -0800, Andreas J. Koenig via RT wrote​:

Apologies if this is a duplicate for you, I cannot see that this BBC
report I wrote on 2016-11-25 ever made it to perlbug. Thanks to Slaven
for bringing this to my attention.

bisect
------
commit e03e82a
Author​: David Mitchell <davem@​iabyn.com>
Date​: Thu Nov 24 09​:40​:44 2016 +0000

add sv\_set\_undef\(\) API function

Fixed with

commit 523e5ba
Author​: David Mitchell <davem@​iabyn.com>
AuthorDate​: Sun Dec 25 12​:14​:10 2016 +0000
Commit​: David Mitchell <davem@​iabyn.com>
CommitDate​: Sun Dec 25 18​:02​:53 2016 +0000

  fix (*glob) = ()
 
  RT #130385
 
  The new sv_set_undef() function added by me with v5.25.7-12-ge03e82a
  didn't handle undeffing a glob correctly, and gave an assertion failure.
 
  Fix it to behave more exactly like (sv_setsv(sv, &PL_sv_undef),
  which it is documented as being identical to.

Affected files ...
  M sv.c
  M t/lib/warnings/sv

--
In my day, we used to edit the inodes by hand. With magnets.

@p5pRT
Copy link
Author

p5pRT commented Dec 25, 2016

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Dec 26, 2016

From @jkeenan

On Sun, 25 Dec 2016 18​:04​:51 GMT, davem wrote​:

On Wed, Dec 21, 2016 at 02​:14​:55PM -0800, Andreas J. Koenig via RT wrote​:

Apologies if this is a duplicate for you, I cannot see that this BBC
report I wrote on 2016-11-25 ever made it to perlbug. Thanks to Slaven
for bringing this to my attention.

bisect
------
commit e03e82a
Author​: David Mitchell <davem@​iabyn.com>
Date​: Thu Nov 24 09​:40​:44 2016 +0000

add sv\_set\_undef\(\) API function

Fixed with

commit 523e5ba
Author​: David Mitchell <davem@​iabyn.com>
AuthorDate​: Sun Dec 25 12​:14​:10 2016 +0000
Commit​: David Mitchell <davem@​iabyn.com>
CommitDate​: Sun Dec 25 18​:02​:53 2016 +0000

fix \(\*glob\) = \(\)

RT \#130385

The new sv\_set\_undef\(\) function added by me with v5\.25\.7\-12\-ge03e82a
didn't handle undeffing a glob correctly\, and gave an assertion failure\.

Fix it to behave more exactly like \(sv\_setsv\(sv\, &PL\_sv\_undef\)\,
which it is documented as being identical to\.

Affected files ...
M sv.c
M t/lib/warnings/sv

Configuring with these options​:

#####
'-des -Dusedevel -Uversiononly -Dman1dir=none -Dman3dir=none -Duseithreads -Uuselongdouble -DDEBUGGING=-g
#####

... I was able to build blead at this commit​:

#####
This is perl 5, version 25, subversion 9 (v5.25.9 (v5.25.8-76-gb1b8fb6)) built for x86_64-linux-thread-multi
#####

... and use 'cpanm' to successfully install List​::Pairwise.

Thank you very much.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Dec 26, 2016

@iabyn - Status changed from 'open' to 'resolved'

@p5pRT
Copy link
Author

p5pRT commented Dec 27, 2016

From @andk

Slaven found another affected module that unfortunately is not fixed by 523e5ba.

already closed ticket (maybe can be merged?)


[perl #130385] perlbug AutoReply​: Bleadperl v5.25.7-12-ge03e82a breaks TDRUGEON/List-Pairwise-1.03.tar.gz

also affected


ERIKOEST/DNS-LDNS-0.52.tar.gz

On Debian requires package libldns-dev. YMMV.

perl -V


% /home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/*5.25.7-12-g*/????/bin/perl -V
Summary of my perl5 (revision 5 version 25 subversion 8) configuration​:
  Derived from​: e03e82a
  Platform​:
  osname=linux
  osvers=4.4.0-57-generic
  archname=x86_64-linux
  uname='linux k93x64xenial 4.4.0-57-generic #78-ubuntu smp fri dec 9 23​:50​:32 utc 2016 x86_64 x86_64 x86_64 gnulinux '
  config_args='-Dprefix=/home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e -Dmyhostname=k93x64xenial -Dinstallusrbinperl=n -Uversiononly -Dusedevel -des -Ui_db -Dlibswanted=cl pthread socket inet nsl gdbm dbm malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat -Uuseithreads -Uuselongdouble -DDEBUGGING=-g'
  hint=recommended
  useposix=true
  d_sigaction=define
  useithreads=undef
  usemultiplicity=undef
  use64bitint=define
  use64bitall=define
  uselongdouble=undef
  usemymalloc=n
  bincompat5005=undef
  Compiler​:
  cc='cc'
  ccflags ='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
  optimize='-O2 -g'
  cppflags='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
  ccversion=''
  gccversion='5.4.0 20160609'
  gccosandvers=''
  intsize=4
  longsize=8
  ptrsize=8
  doublesize=8
  byteorder=12345678
  doublekind=3
  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/5/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=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  libc=libc-2.23.so
  so=so
  useshrplib=false
  libperl=libperl.a
  gnulibc_version='2.23'
  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
  PERLIO_LAYERS
  PERL_COPY_ON_WRITE
  PERL_DONT_CREATE_GVSV
  PERL_HASH_FUNC_ONE_AT_A_TIME_HARD
  PERL_MALLOC_WRAP
  PERL_OP_PARENT
  PERL_PRESERVE_IVUV
  PERL_USE_DEVEL
  USE_64_BIT_ALL
  USE_64_BIT_INT
  USE_LARGE_FILES
  USE_LOCALE
  USE_LOCALE_COLLATE
  USE_LOCALE_CTYPE
  USE_LOCALE_NUMERIC
  USE_LOCALE_TIME
  USE_PERLIO
  USE_PERL_ATOF
  Locally applied patches​:
  uncommitted-changes
  Built under linux
  Compiled at Dec 27 2016 22​:37​:10
  @​INC​:
  /home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/site_perl/5.25.8/x86_64-linux
  /home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/site_perl/5.25.8
  /home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/5.25.8/x86_64-linux
  /home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/5.25.8
  .

--
andreas

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @khwilliamson

Reopening and merging 130420 into this
--
Karl Williamson

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

@khwilliamson - Status changed from 'resolved' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @khwilliamson

On 12/27/2016 03​:58 PM, (Andreas J. Koenig) (via RT) wrote​:

# New Ticket Created by (Andreas J. Koenig)
# Please include the string​: [perl #130420]
# in the subject line of all future correspondence about this issue.
# <URL​: https://rt-archive.perl.org/perl5/Ticket/Display.html?id=130420 >

Slaven found another affected module that unfortunately is not fixed by 523e5ba.

already closed ticket (maybe can be merged?)

This ticket has now been merged with that one, which is reopened.

--------------------------------------------
[perl #130385] perlbug AutoReply​: Bleadperl v5.25.7-12-ge03e82a breaks TDRUGEON/List-Pairwise-1.03.tar.gz

also affected
-------------
ERIKOEST/DNS-LDNS-0.52.tar.gz

On Debian requires package libldns-dev. YMMV.

perl -V
-------
% /home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/*5.25.7-12-g*/????/bin/perl -V
Summary of my perl5 (revision 5 version 25 subversion 8) configuration​:
Derived from​: e03e82a
Platform​:
osname=linux
osvers=4.4.0-57-generic
archname=x86_64-linux
uname='linux k93x64xenial 4.4.0-57-generic #78-ubuntu smp fri dec 9 23​:50​:32 utc 2016 x86_64 x86_64 x86_64 gnulinux '
config_args='-Dprefix=/home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e -Dmyhostname=k93x64xenial -Dinstallusrbinperl=n -Uversiononly -Dusedevel -des -Ui_db -Dlibswanted=cl pthread socket inet nsl gdbm dbm malloc dl ld sun m crypt sec util c cposix posix ucb BSD gdbm_compat -Uuseithreads -Uuselongdouble -DDEBUGGING=-g'
hint=recommended
useposix=true
d_sigaction=define
useithreads=undef
usemultiplicity=undef
use64bitint=define
use64bitall=define
uselongdouble=undef
usemymalloc=n
bincompat5005=undef
Compiler​:
cc='cc'
ccflags ='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
optimize='-O2 -g'
cppflags='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
ccversion=''
gccversion='5.4.0 20160609'
gccosandvers=''
intsize=4
longsize=8
ptrsize=8
doublesize=8
byteorder=12345678
doublekind=3
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/5/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=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
libc=libc-2.23.so
so=so
useshrplib=false
libperl=libperl.a
gnulibc_version='2.23'
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
PERLIO_LAYERS
PERL_COPY_ON_WRITE
PERL_DONT_CREATE_GVSV
PERL_HASH_FUNC_ONE_AT_A_TIME_HARD
PERL_MALLOC_WRAP
PERL_OP_PARENT
PERL_PRESERVE_IVUV
PERL_USE_DEVEL
USE_64_BIT_ALL
USE_64_BIT_INT
USE_LARGE_FILES
USE_LOCALE
USE_LOCALE_COLLATE
USE_LOCALE_CTYPE
USE_LOCALE_NUMERIC
USE_LOCALE_TIME
USE_PERLIO
USE_PERL_ATOF
Locally applied patches​:
uncommitted-changes
Built under linux
Compiled at Dec 27 2016 22​:37​:10
@​INC​:
/home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/site_perl/5.25.8/x86_64-linux
/home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/site_perl/5.25.8
/home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/5.25.8/x86_64-linux
/home/sand/src/perl/repoperls/installed-perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/5.25.8
.

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @jkeenan

On Wed, 28 Dec 2016 00​:07​:08 GMT, public@​khwilliamson.com wrote​:

On 12/27/2016 03​:58 PM, (Andreas J. Koenig) (via RT) wrote​:

# New Ticket Created by (Andreas J. Koenig)
# Please include the string​: [perl #130420]
# in the subject line of all future correspondence about this issue.
# <URL​: https://rt-archive.perl.org/perl5/Ticket/Display.html?id=130420 >

Slaven found another affected module that unfortunately is not fixed
by 523e5ba.

already closed ticket (maybe can be merged?)

This ticket has now been merged with that one, which is reopened.

--------------------------------------------
[perl #130385] perlbug AutoReply​: Bleadperl v5.25.7-12-ge03e82a
breaks TDRUGEON/List-Pairwise-1.03.tar.gz

also affected
-------------
ERIKOEST/DNS-LDNS-0.52.tar.gz

On Debian requires package libldns-dev. YMMV.

perl -V
-------
% /home/sand/src/perl/repoperls/installed-
perls/host/k93x64xenial/*5.25.7-12-g*/????/bin/perl -V
Summary of my perl5 (revision 5 version 25 subversion 8)
configuration​:
Derived from​: e03e82a
Platform​:
osname=linux
osvers=4.4.0-57-generic
archname=x86_64-linux
uname='linux k93x64xenial 4.4.0-57-generic #78-ubuntu smp fri dec
9 23​:50​:32 utc 2016 x86_64 x86_64 x86_64 gnulinux '
config_args='-Dprefix=/home/sand/src/perl/repoperls/installed-
perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e
-Dmyhostname=k93x64xenial -Dinstallusrbinperl=n -Uversiononly
-Dusedevel -des -Ui_db -Dlibswanted=cl pthread socket inet nsl gdbm
dbm malloc dl ld sun m crypt sec util c cposix posix ucb BSD
gdbm_compat -Uuseithreads -Uuselongdouble -DDEBUGGING=-g'
hint=recommended
useposix=true
d_sigaction=define
useithreads=undef
usemultiplicity=undef
use64bitint=define
use64bitall=define
uselongdouble=undef
usemymalloc=n
bincompat5005=undef
Compiler​:
cc='cc'
ccflags ='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-
strong -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64'
optimize='-O2 -g'
cppflags='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-
strong -I/usr/local/include'
ccversion=''
gccversion='5.4.0 20160609'
gccosandvers=''
intsize=4
longsize=8
ptrsize=8
doublesize=8
byteorder=12345678
doublekind=3
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/5/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=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
libc=libc-2.23.so
so=so
useshrplib=false
libperl=libperl.a
gnulibc_version='2.23'
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
PERLIO_LAYERS
PERL_COPY_ON_WRITE
PERL_DONT_CREATE_GVSV
PERL_HASH_FUNC_ONE_AT_A_TIME_HARD
PERL_MALLOC_WRAP
PERL_OP_PARENT
PERL_PRESERVE_IVUV
PERL_USE_DEVEL
USE_64_BIT_ALL
USE_64_BIT_INT
USE_LARGE_FILES
USE_LOCALE
USE_LOCALE_COLLATE
USE_LOCALE_CTYPE
USE_LOCALE_NUMERIC
USE_LOCALE_TIME
USE_PERLIO
USE_PERL_ATOF
Locally applied patches​:
uncommitted-changes
Built under linux
Compiled at Dec 27 2016 22​:37​:10
@​INC​:
/home/sand/src/perl/repoperls/installed-
perls/host/k93x64xenial/v5.25.7-12-
ge03e82a/4a0e/lib/site_perl/5.25.8/x86_64-linux
/home/sand/src/perl/repoperls/installed-
perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/site_perl/5.25.8
/home/sand/src/perl/repoperls/installed-
perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/5.25.8/x86_64-
linux
/home/sand/src/perl/repoperls/installed-
perls/host/k93x64xenial/v5.25.7-12-ge03e82a/4a0e/lib/5.25.8
.

matrix.cpantesters.org doesn't have the report yet, so I'm
attaching the failure output I got when trying to install this with 'cpanm' (albeit with simpler config_args -- unthreaded).

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @jkeenan

Building and testing DNS-LDNS-0.52
cp lib/DNS/LDNS/DNSSecDataChain.pm blib/lib/DNS/LDNS/DNSSecDataChain.pm
cp lib/DNS/LDNS/DNSSecRRs.pm blib/lib/DNS/LDNS/DNSSecRRs.pm
cp lib/DNS/LDNS.pm blib/lib/DNS/LDNS.pm
AutoSplitting blib/lib/DNS/LDNS.pm (blib/lib/auto/DNS/LDNS)
cp lib/DNS/LDNS/RBTree.pm blib/lib/DNS/LDNS/RBTree.pm
cp lib/DNS/LDNS/RRList.pm blib/lib/DNS/LDNS/RRList.pm
cp lib/DNS/LDNS/DNSSecRRSets.pm blib/lib/DNS/LDNS/DNSSecRRSets.pm
cp lib/DNS/LDNS/Packet.pm blib/lib/DNS/LDNS/Packet.pm
cp lib/DNS/LDNS/Resolver.pm blib/lib/DNS/LDNS/Resolver.pm
cp lib/DNS/LDNS/RBNode.pm blib/lib/DNS/LDNS/RBNode.pm
cp lib/DNS/LDNS/GC.pm blib/lib/DNS/LDNS/GC.pm
cp lib/DNS/LDNS/KeyList.pm blib/lib/DNS/LDNS/KeyList.pm
cp lib/DNS/LDNS/RR.pm blib/lib/DNS/LDNS/RR.pm
cp lib/DNS/LDNS/DNSSecZone.pm blib/lib/DNS/LDNS/DNSSecZone.pm
cp lib/DNS/LDNS/Key.pm blib/lib/DNS/LDNS/Key.pm
cp lib/DNS/LDNS/RData.pm blib/lib/DNS/LDNS/RData.pm
cp lib/DNS/LDNS/DNSSecName.pm blib/lib/DNS/LDNS/DNSSecName.pm
cp lib/DNS/LDNS/DNSSecTrustTree.pm blib/lib/DNS/LDNS/DNSSecTrustTree.pm
cp lib/DNS/LDNS/Zone.pm blib/lib/DNS/LDNS/Zone.pm
Running Mkbootstrap for LDNS ()
chmod 644 "LDNS.bs"
"/home/jkeenan/testing/blead/bin/perl" -MExtUtils​::Command​::MM -e 'cp_nonempty' -- LDNS.bs blib/arch/auto/DNS/LDNS/LDNS.bs 644
"/home/jkeenan/testing/blead/bin/perl" "/home/jkeenan/testing/blead/lib/perl5/5.25.9/ExtUtils/xsubpp" -typemap '/home/jkeenan/testing/blead/lib/perl5/5.25.9/ExtUtils/typemap' -typemap '/home/jkeenan/.cpanm/work/1482884067.24282/DNS-LDNS/typemap' LDNS.xs > LDNS.xsc
mv LDNS.xsc LDNS.c
cc -c -I. -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"0.52\" -DXS_VERSION=\"0.52\" -fPIC "-I/home/jkeenan/testing/blead/lib/perl5/5.25.9/x86_64-linux/CORE" LDNS.c
rm -f blib/arch/auto/DNS/LDNS/LDNS.so
LD_RUN_PATH="/usr/lib/x86_64-linux-gnu" cc -shared -O2 -L/usr/local/lib -fstack-protector-strong LDNS.o -o blib/arch/auto/DNS/LDNS/LDNS.so \
  -lldns \
 
chmod 755 blib/arch/auto/DNS/LDNS/LDNS.so
"/home/jkeenan/testing/blead/bin/perl" -MExtUtils​::Command​::MM -e 'cp_nonempty' -- LDNS.bs blib/arch/auto/DNS/LDNS/LDNS.bs 644
PERL_DL_NONLAZY=1 "/home/jkeenan/testing/blead/bin/perl" "-MExtUtils​::Command​::MM" "-MTest​::Harness" "-e" "undef *Test​::Harness​::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/DNS-LDNS.t .......... ok
Can't call method "ad" on an undefined value at t/dnssec_datachain.t line 22.
# Looks like your test exited with 25 just after 1.
t/dnssec_datachain.t ..
Dubious, test returned 25 (wstat 6400, 0x1900)
Failed 9/10 subtests
t/dnssec_zone.t ....... ok
t/key.t ............... ok
t/rdata.t ............. ok
t/resolver.t .......... ok
Modification of a read-only value attempted at /home/jkeenan/.cpanm/work/1482884067.24282/DNS-LDNS/blib/lib/DNS/LDNS/RR.pm line 32.
# Looks like your test exited with 255 just after 6.
t/rr.t ................
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 13/19 subtests
Modification of a read-only value attempted at /home/jkeenan/.cpanm/work/1482884067.24282/DNS-LDNS/blib/lib/DNS/LDNS/RR.pm line 32.
# Looks like your test exited with 255 just after 2.
t/rrlist.t ............
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 22/24 subtests
Modification of a read-only value attempted at /home/jkeenan/.cpanm/work/1482884067.24282/DNS-LDNS/blib/lib/DNS/LDNS/RR.pm line 32.
# Looks like your test exited with 255 just after 2.
t/zone.t ..............
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 14/16 subtests

Test Summary Report


t/dnssec_datachain.t (Wstat​: 6400 Tests​: 1 Failed​: 0)
  Non-zero exit status​: 25
  Parse errors​: Bad plan. You planned 10 tests but ran 1.
t/rr.t (Wstat​: 65280 Tests​: 6 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 19 tests but ran 6.
t/rrlist.t (Wstat​: 65280 Tests​: 2 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 24 tests but ran 2.
t/zone.t (Wstat​: 65280 Tests​: 2 Failed​: 0)
  Non-zero exit status​: 255
  Parse errors​: Bad plan. You planned 16 tests but ran 2.
Files=9, Tests=49, 15 wallclock secs ( 0.03 usr 0.00 sys + 0.45 cusr 0.02 csys = 0.50 CPU)
Result​: FAIL
Failed 4/9 test programs. 0/49 subtests failed.
Makefile​:1045​: recipe for target 'test_dynamic' failed
make​: *** [test_dynamic] Error 255

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @iabyn

On Tue, Dec 27, 2016 at 02​:58​:06PM -0800, Andreas J. Koenig via RT wrote​:

already closed ticket (maybe can be merged?)
--------------------------------------------
[perl #130385] perlbug AutoReply​: Bleadperl v5.25.7-12-ge03e82a breaks TDRUGEON/List-Pairwise-1.03.tar.gz

also affected
-------------
ERIKOEST/DNS-LDNS-0.52.tar.gz

Fixed with the following commit which has just been merged into blead​:

commit 49b3432
Author​: David Mitchell <davem@​iabyn.com>
AuthorDate​: Wed Dec 28 14​:05​:43 2016 +0000
Commit​: David Mitchell <davem@​iabyn.com>
CommitDate​: Wed Dec 28 14​:10​:29 2016 +0000

  Allow sv = &PL_sv_undef; sv_set_undef(sv) to work
 
  RT #130385
 
  Technically
 
  sv = &PL_sv_undef;
  ....
  sv_set_undef(sv)
 
  is modifying a read-only variable and so should croak, but some XS code
  relies on the behaviour previous to the introduction of sv_set_undef(),
  where​:
 
  sv = &PL_sv_undef;
  ....
  sv_setsv(sv, &PL_undef)
 
  silently succeeds (sv_setsv() returns immediately if src and dst
  addresses are the same).

Affected files ...
  M sv.c

Differences ...

Inline Patch
diff --git a/sv.c b/sv.c
index e3026f7..83d82fc 100644
--- a/sv.c
+++ b/sv.c
@@ -4808,8 +4808,13 @@ Perl_sv_set_undef(pTHX_ SV *sv)
 
     if (type <= SVt_IV) {
         assert(!SvGMAGICAL(sv));
-        if (SvREADONLY(sv))
+        if (SvREADONLY(sv)) {
+            /* does undeffing PL_sv_undef count as modifying a read-only
+             * variable? Some XS code does this */
+            if (sv == &PL_sv_undef)
+                return;
             Perl_croak_no_modify();
+        }
 
         if (SvROK(sv)) {
             if (SvWEAKREF(sv))


-- 

Wesley Crusher gets beaten up by his classmates for being a smarmy git,
and consequently has a go at making some friends of his own age for a
change.
  -- Things That Never Happen in "Star Trek" #18

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @jkeenan

On Wed, 28 Dec 2016 14​:19​:04 GMT, davem wrote​:

On Tue, Dec 27, 2016 at 02​:58​:06PM -0800, Andreas J. Koenig via RT
wrote​:

already closed ticket (maybe can be merged?)
--------------------------------------------
[perl #130385] perlbug AutoReply​: Bleadperl v5.25.7-12-ge03e82a
breaks TDRUGEON/List-Pairwise-1.03.tar.gz

also affected
-------------
ERIKOEST/DNS-LDNS-0.52.tar.gz

Fixed with the following commit which has just been merged into blead​:

commit 49b3432
Author​: David Mitchell <davem@​iabyn.com>
AuthorDate​: Wed Dec 28 14​:05​:43 2016 +0000
Commit​: David Mitchell <davem@​iabyn.com>
CommitDate​: Wed Dec 28 14​:10​:29 2016 +0000

Allow sv = &PL_sv_undef; sv_set_undef(sv) to work

RT #130385

Technically

sv = &PL_sv_undef;
....
sv_set_undef(sv)

is modifying a read-only variable and so should croak, but some XS
code
relies on the behaviour previous to the introduction of
sv_set_undef(),
where​:

sv = &PL_sv_undef;
....
sv_setsv(sv, &PL_undef)

silently succeeds (sv_setsv() returns immediately if src and dst
addresses are the same).

Affected files ...
M sv.c

Differences ...

diff --git a/sv.c b/sv.c
index e3026f7..83d82fc 100644
--- a/sv.c
+++ b/sv.c
@​@​ -4808,8 +4808,13 @​@​ Perl_sv_set_undef(pTHX_ SV *sv)

if (type <= SVt_IV) {
assert(!SvGMAGICAL(sv));
- if (SvREADONLY(sv))
+ if (SvREADONLY(sv)) {
+ /* does undeffing PL_sv_undef count as modifying a read-
only
+ * variable? Some XS code does this */
+ if (sv == &PL_sv_undef)
+ return;
Perl_croak_no_modify();
+ }

if (SvROK(sv)) {
if (SvWEAKREF(sv))

Unfortunately, when I configured blead with a somewhat stripped-down version of Andreas's config_args and then tried to install DNS​::LDNS via 'cpanm', I still got one test failure.

Attaching relevant tail of the build.log and perl -V output.

Thank you very much.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @jkeenan

Successfully installed Test-Exception-0.43
Installing /home/jkeenan/testing/blead/lib/perl5/site_perl/5.25.9/x86_64-linux/.meta/Test-Exception-0.43/install.json
Installing /home/jkeenan/testing/blead/lib/perl5/site_perl/5.25.9/x86_64-linux/.meta/Test-Exception-0.43/MYMETA.json
Building and testing DNS-LDNS-0.52
cp lib/DNS/LDNS/Packet.pm blib/lib/DNS/LDNS/Packet.pm
cp lib/DNS/LDNS/Zone.pm blib/lib/DNS/LDNS/Zone.pm
cp lib/DNS/LDNS/RData.pm blib/lib/DNS/LDNS/RData.pm
cp lib/DNS/LDNS/DNSSecTrustTree.pm blib/lib/DNS/LDNS/DNSSecTrustTree.pm
cp lib/DNS/LDNS/RRList.pm blib/lib/DNS/LDNS/RRList.pm
cp lib/DNS/LDNS/RR.pm blib/lib/DNS/LDNS/RR.pm
cp lib/DNS/LDNS/DNSSecRRSets.pm blib/lib/DNS/LDNS/DNSSecRRSets.pm
cp lib/DNS/LDNS/GC.pm blib/lib/DNS/LDNS/GC.pm
cp lib/DNS/LDNS/KeyList.pm blib/lib/DNS/LDNS/KeyList.pm
cp lib/DNS/LDNS/RBNode.pm blib/lib/DNS/LDNS/RBNode.pm
cp lib/DNS/LDNS/DNSSecName.pm blib/lib/DNS/LDNS/DNSSecName.pm
cp lib/DNS/LDNS/DNSSecZone.pm blib/lib/DNS/LDNS/DNSSecZone.pm
cp lib/DNS/LDNS/Key.pm blib/lib/DNS/LDNS/Key.pm
cp lib/DNS/LDNS.pm blib/lib/DNS/LDNS.pm
AutoSplitting blib/lib/DNS/LDNS.pm (blib/lib/auto/DNS/LDNS)
cp lib/DNS/LDNS/Resolver.pm blib/lib/DNS/LDNS/Resolver.pm
cp lib/DNS/LDNS/DNSSecDataChain.pm blib/lib/DNS/LDNS/DNSSecDataChain.pm
cp lib/DNS/LDNS/DNSSecRRs.pm blib/lib/DNS/LDNS/DNSSecRRs.pm
cp lib/DNS/LDNS/RBTree.pm blib/lib/DNS/LDNS/RBTree.pm
Running Mkbootstrap for LDNS ()
chmod 644 "LDNS.bs"
"/home/jkeenan/testing/blead/bin/perl" -MExtUtils​::Command​::MM -e 'cp_nonempty' -- LDNS.bs blib/arch/auto/DNS/LDNS/LDNS.bs 644
"/home/jkeenan/testing/blead/bin/perl" "/home/jkeenan/testing/blead/lib/perl5/5.25.9/ExtUtils/xsubpp" -typemap '/home/jkeenan/testing/blead/lib/perl5/5.25.9/ExtUtils/typemap' -typemap '/home/jkeenan/.cpanm/work/1482937545.25223/DNS-LDNS/typemap' LDNS.xs > LDNS.xsc
mv LDNS.xsc LDNS.c
cc -c -I. -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"0.52\" -DXS_VERSION=\"0.52\" -fPIC "-I/home/jkeenan/testing/blead/lib/perl5/5.25.9/x86_64-linux/CORE" LDNS.c
rm -f blib/arch/auto/DNS/LDNS/LDNS.so
LD_RUN_PATH="/usr/lib/x86_64-linux-gnu" cc -shared -O2 -g -L/usr/local/lib -fstack-protector-strong LDNS.o -o blib/arch/auto/DNS/LDNS/LDNS.so \
  -lldns \
 
chmod 755 blib/arch/auto/DNS/LDNS/LDNS.so
Manifying 18 pod documents
"/home/jkeenan/testing/blead/bin/perl" -MExtUtils​::Command​::MM -e 'cp_nonempty' -- LDNS.bs blib/arch/auto/DNS/LDNS/LDNS.bs 644
PERL_DL_NONLAZY=1 "/home/jkeenan/testing/blead/bin/perl" "-MExtUtils​::Command​::MM" "-MTest​::Harness" "-e" "undef *Test​::Harness​::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/DNS-LDNS.t .......... ok
Can't call method "ad" on an undefined value at t/dnssec_datachain.t line 22.
# Looks like your test exited with 25 just after 1.
t/dnssec_datachain.t ..
Dubious, test returned 25 (wstat 6400, 0x1900)
Failed 9/10 subtests
t/dnssec_zone.t ....... ok
t/key.t ............... ok
t/rdata.t ............. ok
t/resolver.t .......... ok
t/rr.t ................ ok
t/rrlist.t ............ ok
t/zone.t .............. ok

Test Summary Report


t/dnssec_datachain.t (Wstat​: 6400 Tests​: 1 Failed​: 0)
  Non-zero exit status​: 25
  Parse errors​: Bad plan. You planned 10 tests but ran 1.
Files=9, Tests=98, 16 wallclock secs ( 0.04 usr 0.01 sys + 0.50 cusr 0.04 csys = 0.59 CPU)
Result​: FAIL
Failed 1/9 test programs. 0/98 subtests failed.
Makefile​:1098​: recipe for target 'test_dynamic' failed
make​: *** [test_dynamic] Error 255
-> FAIL Installing DNS​::LDNS failed. See /home/jkeenan/.cpanm/work/1482937545.25223/build.log for details. Retry with --force to force install it.
4 distributions installed

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @jkeenan

Summary of my perl5 (revision 5 version 25 subversion 9) configuration​:
  Commit id​: 49b3432
  Platform​:
  osname=linux
  osvers=4.4.0-57-generic
  archname=x86_64-linux
  uname='linux zareason 4.4.0-57-generic #78-ubuntu smp fri dec 9 23​:50​:32 utc 2016 x86_64 x86_64 x86_64 gnulinux '
  config_args='-Dinstallusrbinperl=n -Uversiononly -Dusedevel -des -Ui_db -Uuseithreads -Uuselongdouble -DDEBUGGING=-g -Dprefix=/home/jkeenan/testing/blead'
  hint=recommended
  useposix=true
  d_sigaction=define
  useithreads=undef
  usemultiplicity=undef
  use64bitint=define
  use64bitall=define
  uselongdouble=undef
  usemymalloc=n
  bincompat5005=undef
  Compiler​:
  cc='cc'
  ccflags ='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
  optimize='-O2 -g'
  cppflags='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
  ccversion=''
  gccversion='5.4.0 20160609'
  gccosandvers=''
  intsize=4
  longsize=8
  ptrsize=8
  doublesize=8
  byteorder=12345678
  doublekind=3
  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/5/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 /lib64 /usr/lib64
  libs=-lpthread -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
  perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  libc=libc-2.23.so
  so=so
  useshrplib=false
  libperl=libperl.a
  gnulibc_version='2.23'
  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
  PERLIO_LAYERS
  PERL_COPY_ON_WRITE
  PERL_DONT_CREATE_GVSV
  PERL_MALLOC_WRAP
  PERL_OP_PARENT
  PERL_PRESERVE_IVUV
  PERL_USE_DEVEL
  USE_64_BIT_ALL
  USE_64_BIT_INT
  USE_LARGE_FILES
  USE_LOCALE
  USE_LOCALE_COLLATE
  USE_LOCALE_CTYPE
  USE_LOCALE_NUMERIC
  USE_LOCALE_TIME
  USE_PERLIO
  USE_PERL_ATOF
  Built under linux
  Compiled at Dec 28 2016 10​:04​:06
  %ENV​:
  PERLBREW_BASHRC_VERSION="0.67"
  PERLBREW_HOME="/home/jkeenan/.perlbrew"
  PERLBREW_MANPATH="/home/jkeenan/perl5/perlbrew/perls/perl-5.24.0/man"
  PERLBREW_PATH="/home/jkeenan/perl5/perlbrew/bin​:/home/jkeenan/perl5/perlbrew/perls/perl-5.24.0/bin"
  PERLBREW_PERL="perl-5.24.0"
  PERLBREW_ROOT="/home/jkeenan/perl5/perlbrew"
  PERLBREW_VERSION="0.67"
  PERL_WORKDIR="/home/jkeenan/gitwork/perl"
  @​INC​:
  lib
  /home/jkeenan/testing/blead/lib/perl5/site_perl/5.25.9/x86_64-linux
  /home/jkeenan/testing/blead/lib/perl5/site_perl/5.25.9
  /home/jkeenan/testing/blead/lib/perl5/5.25.9/x86_64-linux
  /home/jkeenan/testing/blead/lib/perl5/5.25.9
  .

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @jkeenan

On Wed, 28 Dec 2016 15​:12​:48 GMT, jkeenan wrote​:

On Wed, 28 Dec 2016 14​:19​:04 GMT, davem wrote​:

On Tue, Dec 27, 2016 at 02​:58​:06PM -0800, Andreas J. Koenig via RT
wrote​:

already closed ticket (maybe can be merged?)
--------------------------------------------
[perl #130385] perlbug AutoReply​: Bleadperl v5.25.7-12-ge03e82a
breaks TDRUGEON/List-Pairwise-1.03.tar.gz

also affected
-------------
ERIKOEST/DNS-LDNS-0.52.tar.gz

Fixed with the following commit which has just been merged into
blead​:

commit 49b3432
Author​: David Mitchell <davem@​iabyn.com>
AuthorDate​: Wed Dec 28 14​:05​:43 2016 +0000
Commit​: David Mitchell <davem@​iabyn.com>
CommitDate​: Wed Dec 28 14​:10​:29 2016 +0000

Allow sv = &PL_sv_undef; sv_set_undef(sv) to work

RT #130385

Technically

sv = &PL_sv_undef;
....
sv_set_undef(sv)

is modifying a read-only variable and so should croak, but some XS
code
relies on the behaviour previous to the introduction of
sv_set_undef(),
where​:

sv = &PL_sv_undef;
....
sv_setsv(sv, &PL_undef)

silently succeeds (sv_setsv() returns immediately if src and dst
addresses are the same).

Affected files ...
M sv.c

Differences ...

diff --git a/sv.c b/sv.c
index e3026f7..83d82fc 100644
--- a/sv.c
+++ b/sv.c
@​@​ -4808,8 +4808,13 @​@​ Perl_sv_set_undef(pTHX_ SV *sv)

if (type <= SVt_IV) {
assert(!SvGMAGICAL(sv));
- if (SvREADONLY(sv))
+ if (SvREADONLY(sv)) {
+ /* does undeffing PL_sv_undef count as modifying a read-
only
+ * variable? Some XS code does this */
+ if (sv == &PL_sv_undef)
+ return;
Perl_croak_no_modify();
+ }

if (SvROK(sv)) {
if (SvWEAKREF(sv))

Unfortunately, when I configured blead with a somewhat stripped-down
version of Andreas's config_args and then tried to install DNS​::LDNS
via 'cpanm', I still got one test failure.

Attaching relevant tail of the build.log and perl -V output.

Thank you very much.

I should note, however, that this may be a problem with the module, with its test file, or with some missing prerequisite. The test file has written does not check for definedness of an object before making a method call on that object.

#####
my $p = $r->query(
  new DNS​::LDNS​::RData(LDNS_RDF_TYPE_DNAME, 'iis.se.'),
  LDNS_RR_TYPE_SOA, LDNS_RR_CLASS_IN, LDNS_RD);
#####

If on my machine I throw in a test for definedness immediately after that statement in the test file, the test fails.

#####
ok(defined($p), "result of resolver query is defined");
#####
$ /testing/blead/bin/prove -I/testing/blead/lib -vb t/dnssec_datachain.t
t/dnssec_datachain.t ..
ok 1 - use DNS​::LDNS;
not ok 2 - result of resolver query is defined

# Failed test 'result of resolver query is defined'
# at t/dnssec_datachain.t line 20.
Can't call method "ad" on an undefined value at t/dnssec_datachain.t line 23.
1..2
#####

I suspect this failure is independent of the test failures reported earlier by Andreas/Slaven and hence independent of Dave's latest commit.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Dec 28, 2016

From @iabyn

On Wed, Dec 28, 2016 at 07​:23​:38AM -0800, James E Keenan via RT wrote​:

I suspect this failure is independent of the test failures reported
earlier by Andreas/Slaven and hence independent of Dave's latest commit.

Looks like a problem with the module's test suite, and nothing to be fixed
in blead.

--
"Foul and greedy Dwarf - you have eaten the last candle."
  -- "Hordes of the Things", BBC Radio.

@p5pRT p5pRT closed this as completed Dec 30, 2016
@p5pRT
Copy link
Author

p5pRT commented Dec 30, 2016

@iabyn - Status changed from 'open' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant