Global symbol "$x" requires explicit package name (did you forget to declare "my $x"?) at #### Bareword "xxx" not allowed while "strict subs" in use at #### open(DATA, "<$tmpfile") or die "Can't open data"; #### $ perl -E 'say for ' Name "main::DATA" used only once: possible typo at -e line 1. readline() on unopened filehandle DATA at -e line 1. $ #### $ perl -E 'say for ; __END__' $ #### perl -E '...' #### perl -Mstrict -Mwarnings -Mautodie -E '...'