develooper 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


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