The eval is because the regexp might match a package name but you don't have a module with that name available to be loaded. For example, if "lib/Foo.pm" defines a function called "Foo::Bar::baz", then you run this:
perl -Ilib -MFoo -ML -e'Foo::Bar::baz(42)'
… without the eval it will die because "lib/Foo/Bar.pm" doesn't exist, even though "lib/Foo/Bar.pm" is unnecessary because "Foo::Bar::baz" is defined elsewhere in a module that successfully loaded.
In reply to Re^3: Perl 28 broke L: How to fix?
by tobyink
in thread Perl 28 broke L: How to fix?
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |