use feature qw( say ); my @a; { say open(my $fh, '<', $a[0]) ? 1 : 0; } # 1 $a[1] = undef; { say open(my $fh, '<', $a[0]) ? 1 : 0; } # 1 $a[0] = undef; { say open(my $fh, '<', $a[0]) ? 1 : 0; } # 0 delete($a[0]); { say open(my $fh, '<', $a[0]) ? 1 : 0; } # 1