develooper Front page | perl.perl5.porters | Postings from September 2001

Re: [ID 20010822.001] Freeing pads after parse error

Thread Previous | Thread Next
From:
Hugo van der Sanden
Date:
September 10, 2001 03:51
Subject:
Re: [ID 20010822.001] Freeing pads after parse error
Message ID:
200109091940.f89JeQ019280@crypt.compulink.co.uk
Simon Cozens <simon@netthink.co.uk> wrote:
:This was reported to me by Ganesh Sittampalam. Here's "bug":
:
:sub blat {
:    sub {
:	  &foo;
:	     or 1;
:	  &foo(""."")
:	     or &baz;
:	}
:}
:
:This segfaults, without an error message.
[...]

I can't reproduce that here:
  crypt% perl -DX ~/t0
  Pad 0x8115518 alloc 1 for entersub
  Pad 0x8115518 alloc 2 for concat
  Pad 0x8115518 alloc 3 for entersub
  Pad 0x811c6e0 alloc 4 for entersub
  Pad 0x811bc60 free 2
  Pad 0x811bc60 free 3
  Pad 0x811bc60 free 4
  syntax error at /home/hv/t0 line 4, near "or"
  syntax error at /home/hv/t0 line 8, near "}"
  Execution of /home/hv/t0 aborted due to compilation errors.
  crypt% 

That was mostly a 5.6.1 compiled on a recent Redhat, but it may have had
one or two regexp patches applied.

Hugo
---
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
  Platform:
    osname=linux, osvers=2.4.2-2, archname=i686-linux
    uname='linux crypt 2.4.2-2 #1 sun apr 8 20:41:30 edt 2001 i686 unknown '
    config_args='-des -Dprefix=/opt/perl-5.6.1 -Doptimize=-g -O6'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
    useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
  Compiler:
    cc='cc', ccflags ='-DDEBUGGING -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-g -O6',
    cppflags='-DDEBUGGING -fno-strict-aliasing'
    ccversion='', gccversion='2.96 20000731 (Red Hat Linux 7.1 2.96-81)', 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, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lndbm -lgdbm -ldl -lm -lc -lcrypt -lutil
    perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil
    libc=/lib/libc-2.2.2.so, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
    cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: DEBUGGING USE_LARGE_FILES
  Built under linux
  Compiled at Jul  1 2001 14:25:14
  @INC:
    /opt/perl-5.6.1/lib/5.6.1/i686-linux
    /opt/perl-5.6.1/lib/5.6.1
    /opt/perl-5.6.1/lib/site_perl/5.6.1/i686-linux
    /opt/perl-5.6.1/lib/site_perl/5.6.1
    /opt/perl-5.6.1/lib/site_perl
    .

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About