This is a bug report for perl from [EMAIL PROTECTED],
generated with the help of perlbug 1.33 running under perl v5.6.1.


-----------------------------------------------------------------
[Please enter your report here]

#!/usr/bin/perl

use warnings;
$a = undef;

print $a, "\n"; # gives a warning
print "$a\n";   # is silent
print "a:$a\n"; # gives a warning

__END__

I think it should be considered a bug that the second print statement does
not give the 'Use of uninitialized value' warning.

It probably has to do with the fact that pp_concat does:

   if (!SvOK(TARG))
      sv_setpv(left, "");
      
and the reason for that is that we don't want

   $a .= "foo";

to give a warning.  But the result is that even things like:

   $a = $something_undef . "foo";

and statements like the print above do not warn.

[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags:
    category=core
    severity=low
---
Site configuration information for perl v5.6.1:

Configured by neilw at Wed Oct 31 23:16:51 PST 2001.

Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
  Platform:
    osname=linux, osvers=2.2.17, archname=i686-linux-thread-multi
    uname='linux gimlet 2.2.17 #1 sun jun 25 09:24:41 est 2000 i686 unknown '
    config_args='-des -Dcc=gcc -Dcf_by=ActiveState 
[EMAIL PROTECTED] -Uinstallusrbinperl -Ud_sigsetjmp -Dusethreads 
-Duseithreads -Dinc_version_list=5.6.0/$archname 5.6.0 
-Dprefix=/local/perl/ActivePerl-630'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
    useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
  Compiler:
    cc='gcc', ccflags ='-DUSE_REENTRANT_API -D_POSIX_C_SOURCE=199506L -D_REENTRANT 
-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2',
    cppflags='-DUSE_REENTRANT_API -D_POSIX_C_SOURCE=199506L -D_REENTRANT 
-fno-strict-aliasing -I/usr/local/include'
    ccversion='', gccversion='2.95.2 20000220 (Debian GNU/Linux)', 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='gcc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lndbm -ldb -ldl -lm -lpthread -lc -lposix -lcrypt -lutil
    perllibs=-lnsl -ldl -lm -lpthread -lc -lposix -lcrypt -lutil
    libc=/lib/libc-2.1.3.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'

Locally applied patches:
    ACTIVEPERL_LOCAL_PATCHES_ENTRY

---
@INC for perl v5.6.1:
    /local/perl/ActivePerl-630/lib/5.6.1/i686-linux-thread-multi
    /local/perl/ActivePerl-630/lib/5.6.1
    /local/perl/ActivePerl-630/lib/site_perl/5.6.1/i686-linux-thread-multi
    /local/perl/ActivePerl-630/lib/site_perl/5.6.1
    /local/perl/ActivePerl-630/lib/site_perl
    .

---
Environment for perl v5.6.1:
    HOME=/home/gisle
    LANG=en_US
    LANGUAGE (unset)
    LD_LIBRARY_PATH=/home/gisle/.kde/lib:/usr/lib
    LOGDIR (unset)
    
PATH=/local/python/AP203/bin:/local/perl/bin:/local/python/bin:/local/perl/bin:/local/perl/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/gisle/bin
    PERL_BADLANG (unset)
    PERL_MM_USE_DEFAULT=1
    SHELL=/bin/bash

Reply via email to