#!/usr/bin/perl use strict; use warnings; my @array = (undef, undef); print "foo\n" if defined @array; print "bar\n" if grep defined , @array; __END__ $ perl foo.pl defined(@array) is deprecated at foo.pl line 5. (Maybe you should just omit the defined()?) foo $ perl -v This is perl, v5.8.5 built for cygwin-thread-multi-64int