[prev in list] [next in list] [prev in thread] [next in thread]
List: perl5-porters
Subject: [perl #47948] [documentation] Hash::Util::FieldHash
From: Michael Cartmell (via RT) <perlbug-followup () perl ! org>
Date: 2007-11-29 10:44:22
Message-ID: rt-3.6.HEAD-28750-1196333062-439.47948-75-0 () perl ! org
[Download RAW message or body]
# New Ticket Created by Michael Cartmell
# Please include the string: [perl #47948]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=47948 >
This is a bug report for perl from Michael Cartmell,
generated with the help of perlbug 1.36 running under perl 5.10.0.
-----------------------------------------------------------------
In the documentation for Hash::Util::FieldHash, the section
Garbage-Collected Hashes says that deleting a key whilst iterating
through the hash will cause bad things to happen (I paraphrase). This is
at variance with a recent posting by Mark Dominus at
http://blog.plover.com/ where he says that adding keys will cause
unpredictable behaviour but deleting keys will not. In fact a fair bit
of trouble was taken Larry Wall to make sure it doesn't.
Assuming MJD is correct and the implementation of hashes in 5.10.0
hasn't changed this behaviour (it was current at 5.8.8) the
documentation should warn about *creating* objects whilst iterating over
fields.
-----------------------------------------------------------------
---
Flags:
category=library
severity=low
---
Site configuration information for perl 5.10.0:
Configured by michael at Tue Nov 27 17:34:32 EST 2007.
Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
Platform:
osname=linux, osvers=2.6.22.12-0.1-default,
archname=i686-linux-thread-multi-64int-ld
uname='linux lnx-main 2.6.22.12-0.1-default #1 smp 20071106 23:05:18
utc i686 athlon i386 gnulinux '
config_args=''
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=undef, uselongdouble=define
usemymalloc=y, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing
-pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O2 -march=i686',
cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
-I/usr/local/include'
ccversion='', gccversion='4.2.1 (SUSE Linux)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long long', ivsize=8, nvtype='long double', nvsize=12,
Off_t='off_t', lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='cc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
libc=/lib/libc-2.6.1.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.6.1'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
cccdlflags='-fPIC', lddlflags='-shared -O2 -march=i686 -L/usr/local/lib'
Locally applied patches:
RC2
---
@INC for perl 5.10.0:
/net/perl/5.10.0-rc2/lib/i686-linux-thread-multi-64int-ld
/net/perl/5.10.0-rc2/lib
/net/perl/5.10.0-rc2/lib/site_perl/i686-linux-thread-multi-64int-ld
/net/perl/5.10.0-rc2/lib/site_perl
.
---
Environment for perl 5.10.0:
HOME=/home/michael
LANG=en_GB.UTF-8
LANGUAGE (unset)
LD_LIBRARY_PATH (unset)
LOGDIR (unset)
PATH=/net/perl/5.10.0-rc2/bin:/opt/kde3/bin:/net/perl/5.8.8/bin:/home/michael/bin:/usr \
/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/lib/qt3/bin
PERL_BADLANG (unset)
SHELL=/bin/bash
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic