> $ perl -Mstrict -wle 'my $f = { }; my @a = @{ $f->{foo} }'
> Can't use an undefined value as an ARRAY reference at -e line 1.
Exactly my point. Stick that _expression_ in a for loop however...
D:\>perl -Mstrict -wle "my $f = { }; my @a=map {$_} @{ $f->{foo} }"
D:\>perl -Mstrict -wle "my $f = { }; for (@{ $f->{foo} }) {print}"