>perl -wMstrict -le "my %labels; my $tablename; $_ = 'foo'; push @{ $labels{$tablename} }, $_; use Data::Dumper; print Dumper \%labels; " Use of uninitialized value $tablename in hash element at .... $VAR1 = { '' => [ 'foo' ] }; >perl -wMstrict -le "my %labels; my $tablename = 'bar'; $_ = 'foo'; push @{ $labels{$tablename} }, $_; use Data::Dumper; print Dumper \%labels; " $VAR1 = { 'bar' => [ 'foo' ] };