Front page | perl.perl5.porters |
Postings from August 2013
Re: [perl #119359] perlvar/Errno contradict each other about %!
Thread Previous
From:
Victor Efimov
Date:
August 18, 2013 23:00
Subject:
Re: [perl #119359] perlvar/Errno contradict each other about %!
Message ID:
CAF7QZD6g9YBAkboBvKNEcWoKzm_5X6viqqaHc-8f=0DUQRp1eg@mail.gmail.com
Seems Errno.pm is auto-loaded when accessing %!
$perl -e 'print join q{ }, keys %INC'
(nothing)
$perl -e '$!=1; print join q{ }, keys %INC'
(nothing)
$perl -e '$!=1; $!{AnyValue}; print join q{ }, keys %INC'
strict.pm Exporter.pm Errno.pm
see perl 5005delta:
http://search.cpan.org/~rjbs/perl-5.18.0/pod/perl5005delta.pod#%!_is_transparently_tied_to_the_Errno_module
also, I think there was a discussion about it
http://www.nntp.perl.org/group/perl.perl5.porters/2001/03/msg33102.html
2013/8/19 l.mai@web.de <perlbug-followup@perl.org>
> # New Ticket Created by l.mai@web.de
> # Please include the string: [perl #119359]
> # in the subject line of all future correspondence about this issue.
> # <URL: https://rt.perl.org:443/rt3/Ticket/Display.html?id=119359 >
>
>
>
> This is a bug report for perl from l.mai@web.de,
> generated with the help of perlbug 1.39 running under perl 5.18.1.
>
>
> -----------------------------------------------------------------
> [Please describe your issue here]
>
> This bug report is about the documentation for %!.
>
> perldoc perlvar says:
>
> %! Each element of "%!" has a true value only if $! is set to
> that value.
> ...
>
> perldoc Errno says:
>
> "Errno" also makes "%!" magic such that each element of "%!" has a
> non-zero
> value only if $! is set to that value.
>
>
> So which is it? Is %! a normal builtin variable like $! (and therefore
> always
> available), or is it provided by the Errno module (which you'd have to load
> first)?
>
> [Please do not change anything below this line]
> -----------------------------------------------------------------
> ---
> Flags:
> category=library
> severity=low
> module=Errno
> ---
> This perlbug was built using Perl 5.12.1 - Thu Jun 3 20:09:15 CEST 2010
> It is being executed now by Perl 5.18.1 - Tue Aug 13 07:08:47 CEST 2013.
>
> Site configuration information for perl 5.18.1:
>
> Configured by mauke at Tue Aug 13 07:08:47 CEST 2013.
>
> Summary of my perl5 (revision 5 version 18 subversion 1) configuration:
>
> Platform:
> osname=linux, osvers=3.5.7-gentoo, archname=i686-linux
> uname='linux nora 3.5.7-gentoo #5 preempt sat jan 26 16:46:10 cet 2013
> i686 amd athlon(tm) 64 processor 3200+ authenticamd gnulinux '
> config_args=''
> hint=recommended, useposix=true, d_sigaction=define
> useithreads=undef, usemultiplicity=undef
> useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
> use64bitint=undef, use64bitall=undef, uselongdouble=undef
> usemymalloc=n, bincompat5005=undef
> Compiler:
> cc='cc', ccflags ='-fno-strict-aliasing -pipe -fstack-protector
> -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
> optimize='-O2 -flto',
> cppflags='-fno-strict-aliasing -pipe -fstack-protector
> -I/usr/local/include'
> ccversion='', gccversion='4.8.1', 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 ='-O2 -flto -fstack-protector -L/usr/local/lib'
> libpth=/usr/local/lib /lib/../lib /usr/lib/../lib /lib /usr/lib
> libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
> perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
> libc=/lib/libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
> gnulibc_version='2.15'
> Dynamic Linking:
> dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
> cccdlflags='-fPIC', lddlflags='-shared -O2 -flto -L/usr/local/lib
> -fstack-protector'
>
> Locally applied patches:
> SAVEARGV0 - disable magic open in <ARGV>
>
> ---
> @INC for perl 5.18.1:
> /home/mauke/usr/local/lib/perl5/site_perl/5.18.1/i686-linux
> /home/mauke/usr/local/lib/perl5/site_perl/5.18.1
> /home/mauke/usr/local/lib/perl5/5.18.1/i686-linux
> /home/mauke/usr/local/lib/perl5/5.18.1
> .
>
> ---
> Environment for perl 5.18.1:
> HOME=/home/mauke
> LANG=en_US.UTF-8
> LANGUAGE (unset)
> LC_COLLATE=POSIX
> LD_LIBRARY_PATH=/home/mauke/usr/local/lib
> LOGDIR (unset)
>
> PATH=/home/mauke/usr/perlbrew/bin:/home/mauke/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.6.3:/opt/sun-jdk-1.4.2.13/bin:/opt/sun-jdk-1.4.2.13/jre/bin:/opt/sun-jdk-1.4.2.13/jre/javaws:/opt/dmd/bin:/usr/games/bin
> PERLBREW_BASHRC_VERSION=0.43
> PERLBREW_HOME=/home/mauke/.perlbrew
> PERLBREW_PATH=/home/mauke/usr/perlbrew/bin
> PERLBREW_ROOT=/home/mauke/usr/perlbrew
> PERLBREW_VERSION=0.27
> PERL_BADLANG (unset)
> PERL_UNICODE=SAL
> SHELL=/bin/bash
>
>
Thread Previous