If what’s within the angle brackets is neither a filehandle nor a sim‐
ple scalar variable containing a filehandle name, typeglob, or typeglob
reference, it is interpreted as a filename pattern to be globbed, and
either a list of filenames or the next filename in the list is
returned, depending on context. This distinction is determined on syn‐
tactic grounds alone. That means "<$x>" is always a readline() from an
indirect handle, but "<$hash{key}>" is always a glob(). That’s because
$x is a simple scalar variable, but $hash{key} is not--it’s a hash ele‐
ment. Even "<$x >" (note the extra space) is treated as "glob("$x ")",
not "readline($x)".
####
my $fh = $test{FH};
print <$fh>;
####
use IO::Handle;
print $test{FH}->getlines();