$ touch foo.pl $ perl -we'use diagnostics; require "foo.pl"' foo.pl did not return a true value at -e line 1 (#1) (F) A required (or used) file must return a true value to indicate that it compiled correctly and ran its initialization code correctly. It's traditional to end such a file with a "1;", though any true value would do. See perlfunc/require. Uncaught exception from user code: foo.pl did not return a true value at -e line 1. at -e line 1 #### $ echo "a.pl did not return a true value at ./require.plx line 7." | splain a.pl did not return a true value at ./require.plx line 7 (#1) (F) A required (or used) file must return a true value to indicate that it compiled correctly and ran its initialization code correctly. It's traditional to end such a file with a "1;", though any true value would do. See perlfunc/require.