my @failures; foreach my $file () { local *STDERR; my %results = eval { $tester->analyze_file( $file ); }; push @failures, $file unless $results{passing}; } if (@failures) { print scalar(@failures), " files failed.\n"; local $"=$/; print "@failures\n"; } else { print "All tests succeeded.\n"; }