##
open FILE, ("foo" || die ...)
####
open( FILE, $file) or die "Error: can't open file '$file': $!\n";
####
open( FH, $file1 ) or die $!;
while( my $line1 = ) {
print "$file1: $line";
open( FH, $file2 ) or die ...;
while( my $line2 = ) {
print "$file2: $line2";
}
close( FH );
} # while
close( FH );
gives you an error because the first close( FH );
####
open( my $FILE, $file )
or die "Error in reading file '$file': $!\n";
while( my $line = <$FILE> ) {
# $line must be defined now, e.g.
chomp( $line );
print "$.: $line\n";
} # while
close( $FILE );