That doesn't seem to work.
#!/usr/bin/perl use strict; use warnings; use Data::Dump; use Symbol; my $glob = Symbol::gensym; warn "$glob\n"; dump $glob; *$glob = { a => 1 }; warn "$glob\n"; dump $glob; %{ *$glob } = ( 'a' => 1 ); @{ *$glob } = ( 1 .. 5 ); warn "$glob\n"; dump $glob;
Gives
GLOB(0x225130) do { require Symbol; Symbol::gensym(); } GLOB(0x225130) do { require Symbol; Symbol::gensym(); } GLOB(0x225130) do { require Symbol; my $a = Symbol::gensym(); *{$a} = [1, 2, 3, 4, 5]; *{$a} = { a => 1 }; $a; }
If I autovivify a hash (and an array) into the glob, dump shows them there, but although the reference assignment doesn't produce errors, dumping the glob after doesn't show anything in the hash slot?
In reply to Re^2: Assigning a reference to to a glob
by Anonymous Monk
in thread Assigning a reference to to a glob
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |