@jimcromie: "hi folks,
heres a perhaps recent regression.  It does not happen w the perl5.9.4 I 
have installed.
]$ perl5.9.5 -MO=Xref -de 1
Loading DB routines from perl5db.pl version 1.3
Editor support available.
Enter h or `h h' for help, or `man perldebug' for more help.
Assertion ((((_gv)->sv_flags & (0x00004000|0x00008000)) == 0x00008000) 
&& (((svtype)((_gv)->sv_flags & 0xff)) == SVt_PVGV || 
((svtype)((_gv)->sv_flags & 0xff)) == SVt_PVLV)) failed: file "B.c", 
line 4834 at 
/usr/local/lib/perl5/5.9.5/i686-linux-thread-multi/B/Xref.pm line 162.
CHECK failedcall queue aborted.
 at -e line 0
$ perl5.9.5 -V
Summary of my perl5 (revision 5 version 9 subversion 5 patch 31199) 
configuration:
  Platform:
    osname=linux, osvers=2.6.20-1.2948.fc6, archname=i686-linux-thread-multi
    uname='linux harpo.jimc.earth 2.6.20-1.2948.fc6 #1 smp fri apr 27 
19:48:40 edt 2007 i686 i686 i386 gnulinux '
    config_args='-des -Dusedevel -Dusethreads -DDEBUGGING'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=undef, use64bitall=undef, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DDEBUGGING 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
    optimize='-O2 -g',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DDEBUGGING 
-fno-strict-aliasing -pipe -I/usr/local/include -I/usr/include/gdbm'
    ccversion='', gccversion='4.1.1 20070105 (Red Hat 4.1.1-51)', 
gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', 
lseeksize=8
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
    libc=/lib/libc-2.5.so, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.5'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -O2 -g -L/usr/local/lib'
Characteristics of this binary (from libperl):
  Compile-time options: DEBUGGING MULTIPLICITY PERL_DONT_CREATE_GVSV
                        PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP
                        PERL_TRACK_MEMPOOL USE_ITHREADS USE_LARGE_FILES
                        USE_PERLIO USE_REENTRANT_API
  Locally applied patches:
        DEVEL
  Built under linux
  Compiled at May 12 2007 10:46:53
  @INC:
    /usr/local/lib/perl5/5.9.5/i686-linux-thread-multi
    /usr/local/lib/perl5/5.9.5
    /usr/local/lib/perl5/site_perl/5.9.5/i686-linux-thread-multi
    /usr/local/lib/perl5/site_perl/5.9.5
    /usr/local/lib/perl5/site_perl
    ."
    @andreaskoenig7os6VVqR: "<quote>
 >> 
 >> hi folks,
 >> 
 >> heres a perhaps recent regression.  It does not happen w the perl5.9.4 I 
 >> have installed.
 >> 
 >> ]$ perl5.9.5 -MO=Xref -de 1
 >> 
 >> Loading DB routines from perl5db.pl version 1.3
 >> Editor support available.
 >> 
 >> Enter h or `h h' for help, or `man perldebug' for more help.
 >> 
 >> Assertion ((((_gv)->sv_flags & (0x00004000|0x00008000)) == 0x00008000) 
 >> && (((svtype)((_gv)->sv_flags & 0xff)) == SVt_PVGV || 
 >> ((svtype)((_gv)->sv_flags & 0xff)) == SVt_PVLV)) failed: file "B.c", 
 >> line 4834 at 
 >> /usr/local/lib/perl5/5.9.5/i686-linux-thread-multi/B/Xref.pm line 162.
 >> CHECK failedcall queue aborted.
 >> at -e line 0
  > Is the binary search able to identify which patch introduced this problem?
Binary search is running but it will take a while. What I found out so far:
- On linux only reproducable with -Dusethreads AND -Doptimize=-g.
- The same program with -Dusethreads and NO debugging indicates a
  different regression (or maybe the same with different behaviour)
  for which I'll run another binary search later. These perls now say
Output of .../pGnbzV6/perl-5.8.0@29592/bin/perl
Can't locate object method "NAME" via package "888a:dbb7:2d49:b3f6:8605:bf4e:caed:e5a4SPECIAL" at /home/src/perl/repoperls/installed-perls/perl/pGnbzV6/perl-5.8.0@29592/lib/5.9.5/i686-linux-thread-multi-64int/B/Xref.pm line 162.
CHECK failedcall queue aborted.
 at -e line 0
EOF
- Several perls I built with -Dusethreads on linux were not completing
  the reset test. I killed them instead of waiting for the test
  forever and installed the perls nonetheless to have material for the
  binary search. The broken perls were: 3120{1,7,8}
andreas"
    @nick: "<quote>
-g ends up setting -DDEBUGGING too, which enables assertions.
Sorry, I should have said that it was important to have -DDEBUGGING set
somehow.
I would not be surprised it if turned out to be the exact same change.
Nicholas Clark"
    @andreaskoenig7os6VVqR: "<quote>
 >> Binary search is running but it will take a while. What I found out so far:
 >> 
 >> - On linux only reproducable with -Dusethreads AND -Doptimize=-g.
  > -g ends up setting -DDEBUGGING too, which enables assertions.
  > Sorry, I should have said that it was important to have -DDEBUGGING set
  > somehow.
 >> - The same program with -Dusethreads and NO debugging indicates a
 >> different regression (or maybe the same with different behaviour)
 >> for which I'll run another binary search later. These perls now say
 >> 
 >> Output of .../pGnbzV6/perl-5.8.0@29592/bin/perl
 >> Can't locate object method "NAME" via package "888a:dbb7:2d49:b3f6:8605:bf4e:caed:e5a4SPECIAL" at /home/src/perl/repoperls/installed-perls/perl/pGnbzV6/perl-5.8.0@29592/lib/5.9.5/i686-linux-thread-multi-64int/B/Xref.pm line 162.
 >> CHECK failedcall queue aborted.
 >> at -e line 0
  > I would not be surprised it if turned out to be the exact same change.
Close. Here's the final result:
Program
use Fil888a:dbb7:2d49:b3f6:8605:bf4e:caed:e5a4Spec;
my $perl = Fil888a:dbb7:2d49:b3f6:8605:bf4e:caed:e5a4Spec->rel2abs($^X);
use Fil888a:dbb7:2d49:b3f6:8605:bf4e:caed:e5a4Basename;
open my $fh, "-|", $perl, '-MO=Xref', "-de", 1 or die;
while (<$fh>) {
  # next unless /pod2text/;
  print if /Subroutine.*definitions/; # just to see *some* thing
}
Output of .../pcbgA3j/perl-5.8.0@29543/bin/perl
-e syntax OK
  Subroutine (definitions)
  Subroutine (definitions)
  Subroutine (definitions)
  Subroutine (definitions)
  Subroutine (definitions)
  Subroutine (definitions)
  Subroutine (definitions)
  Subroutine (definitions)
EOF ($?='0')
Output of .../pKRYih6/perl-5.8.0@29544/bin/perl
Assertion ((((_gv)->sv_flags & (0x00004000|0x00008000)) == 0x00008000) && ((svtype)((_gv)->sv_flags & 0xff) == SVt_PVGV || (svtype)((_gv)->sv_flags & 0xff) == SVt_PVLV)) failed: file "B.c", line 4525 at /home/src/perl/repoperls/installed-perls/perl/pKRYih6/perl-5.8.0@29544/lib/5.9.5/i686-linux-thread-multi-64int/B/Xref.pm line 162.
CHECK failedcall queue aborted.
 at -e line 0
EOF ($?='0')
Need a perl between 29543 and 29544
andreas"
    @andreaskoenig7os6VVqR: "<quote>
 >>> - The same program with -Dusethreads and NO debugging indicates a
 >>> different regression (or maybe the same with different behaviour)
 >>> for which I'll run another binary search later. These perls now say
 >>> 
 >>> Output of .../pGnbzV6/perl-5.8.0@29592/bin/perl
 >>> Can't locate object method "NAME" via package "888a:dbb7:2d49:b3f6:8605:bf4e:caed:e5a4SPECIAL" at /home/src/perl/repoperls/installed-perls/perl/pGnbzV6/perl-5.8.0@29592/lib/5.9.5/i686-linux-thread-multi-64int/B/Xref.pm line 162.
 >>> CHECK failedcall queue aborted.
 >>> at -e line 0
  > Output of .../pKRYih6/perl-5.8.0@29544/bin/perl
  > Assertion ((((_gv)->sv_flags & (0x00004000|0x00008000)) == 0x00008000) && ((svtype)((_gv)->sv_flags & 0xff) == SVt_PVGV || (svtype)((_gv)->sv_flags & 0xff) == SVt_PVLV)) failed: file "B.c", line 4525 at /home/src/perl/repoperls/installed-perls/perl/pKRYih6/perl-5.8.0@29544/lib/5.9.5/i686-linux-thread-multi-64int/B/Xref.pm line 162.
  > CHECK failedcall queue aborted.
  >  at -e line 0
  > EOF ($?='0')
After another binary search I can now confirm that both things are the
same regression with and without debugging. With debugging the
assertion, without debugging the CHECK failure.
andreas"
{'source': 'USENET', 'other_information': '{"reply_count": 4, "forum_name": "list.perl5-porters.20140808.mbox"}', 'file': 'data/output/usenet-list.perl5-porters.parquet'}