#Use of uninitialized value in length... for my $d (grep ! length $_->{Name}, @data) { ... #### #Use of uninitialized value in length... push @new, $d if length $d->{Name} && ! exists $used{ $d->{Name} };