in reply to Pseudo-hashes & Hashes
Dunno if this is line 121, but
my %cmdhash=$cmdarr[$i];
would cause that warning. It should be
my %cmdhash=%{$cmdarr[$i]};
Then again, you don't even use that variable!
Update:
By the way, I avoid
for (my $i=0; $i < @cmdarr; $i++)
in favour of
for my $i ( 0.. $#cmdarr )
It has far less visual clutter. But wouldn't the following be even better?
for my $cmd ( @cmdarr )
|
|---|