develooper Front page | perl.perl5.porters | Postings from November 1999

[ID 19991118.005] Pseudohashes confuse tie()

Thread Next
M.J.T. Guy
November 18, 1999 09:03
[ID 19991118.005] Pseudohashes confuse tie()
Message ID:
    perl -we 'my $x = []; tie $$x, "Junk"'

gives the appropriate error
    Not a SCALAR reference at -e line 1.

    perl -we 'my $x = []; tie %$x, "Junk"'

does something silly
    Can't locate object method "TIEARRAY" via package "Junk" at -e line 1.

Presumably it is being confused by the pseudo-hash logic.

And should tie() on pseudo-hashes Do The Right Thing anyway?

Mike Guy

% ./perl -V
Summary of my perl5 (revision 5.0 version 5 subversion 62) configuration:
    osname=sunos, osvers=4.1.3, archname=sun4-sunos
    uname='sunos nmg1.csi. 4.1.3 1 sun4c '
    config_args='-Doptimise=-O -Uusethreads -des'
    hint=previous, useposix=true, d_sigaction=define
    usethreads=undef useperlio=undef d_sfio=undef
    use64bits=undef usemultiplicity=undef
    cc='gcc', optimize='-O', gccversion=
    ccflags ='-I/usr/local/include'
    stdchar='unsigned char', d_stdstdio=define, usevfork=true
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
    alignbytes=8, usemymalloc=y, prototype=define
  Linker and Libraries:
    ld='ld', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib /usr/ucblib
    libs=-ldbm -ldl -lm -lc -lposix
    libc=/lib/, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
    cccdlflags='-fpic', lddlflags='-assert nodefinitions -L/usr/local/lib'

Characteristics of this binary (from libperl): 
  Locally applied patches:
  Built under sunos
  Compiled at Oct 27 1999 01:31:39

Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About