fix for RT#101086
Father Chrysostomos [Mon, 22 Dec 2014 22:40:38 +0000 (14:40 -0800)]
lib/Eval/WithLexicals.pm

index 89c491c..32b84e8 100644 (file)
@@ -131,7 +131,7 @@ sub _eval_do {
 
   sub capture_list {
     my $pad_capture = \&Eval::WithLexicals::Cage::pad_capture;
-    my @names = grep $_ ne '&', map $_->PV, grep $_->isa('B::PV'),
+    my @names = grep defined && $_ ne '&', map $_->PV, grep $_->can('PV'),
       svref_2object($pad_capture)->OUTSIDE->PADLIST->ARRAYelt(0)->ARRAY;
     $Eval::WithLexicals::current_code .=
       '+{ '.join(', ', map "'$_' => \\$_", @names).' };'