In Configure.pl, one of the things I do is include Data::Dumper if it's
there, and skip the part that needs it otherwise. Unfortunately,
because of the compile-time nature of use, I can't do it. Thus, I have
to use the following hack:
my($DDOK)=eval {
require Data::Dumper;
import Data::Dumper;
1;
}
Ugly, no? What I propose to fix it is that, if I do something like
this:
$DDOK=1;
try {
use Data::Dumper;
}
catch {
$DDOK=0;
}
and Data::Dumper doesn't load, the use statement be transmogrified:
$DDOK=1;
try {
throw "Can't find Data/Dumper.pm in \@INC (\@INC contains: @INC)";
}
catch {
$DDOK=0;
}
However, the transmogrification only occurs if a use is in a try block;
otherwise we get the same die-at-compile-time behavior.
In other words, I want exceptions thrown at compile-time to be catchable
at run-time by surrounding try blocks. Are there any barriers to this
working? If so, what are they?
--Brent Dax
[EMAIL PROTECTED]
They *will* pay for what they've done.