% stephan@armen (/home/stephan) % % perl -MDevel::Size -e 'print $Devel::Size::VERSION' 0.59 % stephan@armen (/home/stephan) % % ./devel_size_test.px Devel::Size: Calculated sizes for CVs are incomplete 108 Devel::Size: Calculated sizes for CVs are incomplete 108 sub2 args('main','./devel_size_test.px','19','main::__ANON__','1','','','','2','UUUUUUUUUUUU') Hullo, monkses! sub1 args('main','./devel_size_test.px','20','main::__ANON__','1','','','','2','UUUUUUUUUUUU') Howdy, world! % stephan@armen (/home/stephan) % % ./devel_size_test2.px Warning: Use of "require" without parentheses is ambiguous at (eval 1) line 1. String found where operator expected at (eval 1) line 1, at end of line Can't find string terminator '"' anywhere before EOF at (eval 1) line 1. % stephan@armen (/home/stephan) % % diff devel_size_test@(|2).px 2d1 < 7,10c6,8 < my $file = shift; < my $sub = \eval "package ".caller()."; require \"$file\""; < my $foo = sub { goto $$sub }; < $foo; --- > my $sub = \eval 'package '.caller().'; require '.shift(@_).'"'; > die $@ if $@; > sub { goto $$sub }; 21d18 <