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

[ID 20010806.026] $^S defined on incomplete eval parsing

From:
Paul Egan
Date:
August 6, 2001 13:35
Subject:
[ID 20010806.026] $^S defined on incomplete eval parsing
Message ID:
3B6EFF2B.4010709@dig.com

This is a bug report for perl from paul.egan@dig.com,
generated with the help of perlbug 1.33 running under perl v5.6.1.


-----------------------------------------------------------------
$^S from perlvar:
Current state of the interpreter.  Undefined if
parsing of the current module/eval is not finished
(may happen in $SIG{__DIE__} and $SIG{__WARN__}
handlers).  True if inside an eval(), otherwise
false.

The following code does not behave as expected -
--
$SIG{__DIE__} = sub {
  print "\$^S is ".(defined($^S)?"":"not ")."defined\n";
};
eval('require("doesNotExist")');
--

Produces "$^S is defined" with 5.6.1 & 5.7.2, but
"$^S is not defined" with 5.005.

-----------------------------------------------------------------
---
Flags:
     category=core
     severity=low
---
Site configuration information for perl v5.6.1:

Configured by pegan at Mon Jul 23 16:17:54 BST 2001.

Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
   Platform:
     osname=solaris, osvers=2.8, archname=sun4-solaris
     uname='sunos ukbvhssw005 5.8 generic_108528-02 sun4u sparc sunw,ultra-5_10 '
     config_args=''
     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 ='-fno-strict-aliasing -I/usr/local/include 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
     optimize='-O',
     cppflags='-fno-strict-aliasing -I/usr/local/include'
     ccversion='', gccversion='2.95.2 19991024 (release)', gccosandvers='solaris2.8'
     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
     ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
     alignbytes=8, usemymalloc=y, prototype=define
   Linker and Libraries:
     ld='cc', ldflags =' -L/usr/local/lib '
     libpth=/usr/local/lib /usr/lib /usr/ccs/lib
     libs=-lsocket -lnsl -lgdbm -ldb -ldl -lm -lc
     perllibs=-lsocket -lnsl -ldl -lm -lc
     libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
   Dynamic Linking:
     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
     cccdlflags='-fPIC', lddlflags='-G -L/usr/local/lib'

Locally applied patches:


---
@INC for perl v5.6.1:
     /usr/local/lib/perl5/5.6.1/sun4-solaris
     /usr/local/lib/perl5/5.6.1
     /usr/local/lib/perl5/site_perl/5.6.1/sun4-solaris
     /usr/local/lib/perl5/site_perl/5.6.1
     /usr/local/lib/perl5/site_perl
     .

---
Environment for perl v5.6.1:
     HOME=/home/uk/pegan
     LANG=en_GB.ISO8859-1
     LANGUAGE (unset)
     LC_COLLATE=en_GB.ISO8859-1
     LC_CTYPE=en_GB.ISO8859-1
     LC_MESSAGES=C
     LC_MONETARY=en_GB.ISO8859-1
     LC_NUMERIC=en_GB.ISO8859-1
     LC_TIME=en_GB.ISO8859-1
 
LD_LIBRARY_PATH=/opt/gnome-1.4/lib:/lib:/usr/lib:/usr/local/lib:/usr/openwin/lib
     LOGDIR (unset)
 
PATH=/home/uk/pegan/bin:/bin:/usr/bin:/usr/openwin/bin:/usr/local/bin:/usr/ucb:/sbin:/usr/sbin:/opt/gnome-1.4/bin:/usr/ccs/bin:/usr/xpg4/bin
     PERL_BADLANG (unset)
     SHELL=/bin/tcsh







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