in reply to Indirect Filehandles + use strict = error

I think what you're looking for is something like this:

use strict; use warnings; # and so on... open my $FH, "<", $filename or croak "and so on...\n";

There was no need to assign the string DATA to $FH.