Branch Coverage

blib/lib/Fatal.pm
Criterion Covered Total %
branch 179 214 83.6


line true false branch
361 2 141 unless @_
366 130 11 if ($_[0] eq ':lexical')
375 2 128 if ($class ne 'autodie' and not $class->isa('autodie'))
376 2 0 if ($class eq 'Fatal') { }
408 47 83 if (@_ == 0)
413 1 129 if (grep {$_ eq ':void';} @_)
418 1 139 if (grep {$_ eq ':lexical';} @_)
446 2 2999 if ($func eq ':void') { }
3 2996 elsif ($func eq '!') { }
463 3 2993 if (substr($func, 0, 1) eq '!')
476 2996 0 unless $sub =~ /::/
482 1 2995 if (not $lexical and $^H{$NO_PACKAGE}{$sub})
502 2936 56 if $lexical
508 128 7 if ($lexical)
546 0 11 if ($_[0] ne ':lexical')
558 6 5 @_ ? :
564 330 0 unless $sub =~ /::/
569 1 329 if (exists $Package_Fatal{$sub})
600 139 18 if (@args < 2)
603 0 139 unless @args
606 76 63 unless exists $TAGS{$args[0]}
626 13 48 if (exists $TAGS{$a}) { }
658 36 12 if ($letter ne ':' and $a ne '!')
659 2 34 if $seen{$a}++
660 2 32 if ($letter eq '!' and $seen{substr $a, 1}++)
696 60 346 if (my $cached = $tag_cache{$tag})
700 1 345 unless (exists $TAGS{$tag})
709 4 341 if (@to_process == 1 and substr($to_process[0], 0, 1) eq ':')
724 311 1825 if (substr($item, 0, 1) eq ':') { }
731 1825 0 unless $seen{$subname}++
767 106 66 if (@argvs == 1) { }
783 46 133 if (@argv and $argv[-1] =~ /[#\@]_/)
838 0 287 if ($void and not $back_compat)
849 81 206 if ($back_compat)
855 0 81 if ($call eq 'CORE::system')
863 3 78 if ($void) { }
864 2 1 $core ? :
868 77 1 $core ? :
883 164 42 $core ? :
892 164 42 if ($core) { }
918 2 204 if ($call eq 'CORE::system')
974 1 203 if ($call eq 'CORE::flock')
992 0 1 if ($try_EAGAIN)
1024 7 196 if (exists $Returns_num_things_changed{$call})
1069 25 171 if ($hints and (ref $$hints{'list'} || '') eq 'CODE') { }
6 165 elsif ($hints) { }
0 165 elsif ($hints) { }
1114 26 170 if ($hints and (ref $$hints{'scalar'} || '') eq 'CODE') { }
5 165 elsif ($hints) { }
0 165 elsif ($hints) { }
1138 128 37 $use_defined_or ? :
1171 2995 0 if (index($sub, '::') == -1) { }
1173 0 2995 if (substr($name, 0, 1) eq '&')
1184 58 2937 unless ($lexical)
1192 0 2995 if $Debug
1193 1 2994 unless $name =~ /^\w+$/
1195 354 2640 if (defined &$sub) { }
0 2640 elsif ($sub eq $ini and not $sub =~ /^CORE::GLOBAL::/) { }
3 2637 elsif ($name eq 'system') { }
1 2636 elsif ($name eq 'exec') { }
1208 1 353 if ($Package_Fatal{$sub} and exists $CORE_prototype_cache{"CORE::$name"}) { }
1230 308 45 if (exists $Is_fatalised_sub{$sref})
1240 0 308 if (defined $s) { }
1254 45 308 unless ($core)
1265 1 44 if ($insist and not $hints)
1301 0 3 if ($E)
1305 0 3 if ($IPC::System::Simple::VERSION < 0.12)
1325 1087 1549 if (exists $CORE_prototype_cache{$call}) { }
1334 0 1549 if $E
1335 1 1548 unless defined $proto
1352 2936 56 if ($lexical) { }
1356 2 54 if $void
1359 0 2992 if (my $subref = $$cache{$cache_type})
1368 1371 1621 if ($core and exists $reusable_builtins{$call})
1372 0 1371 if (not $lexical and defined $code)
1378 98 0 unless ($lexical and $core or defined $code)
1381 23 75 if exists $reusable_builtins{$call}
1385 23 75 unless (defined $wrapper_pkg)
1404 2936 56 if ($lexical)
1439 39 54 unless ($class_loaded{$exception_class})
1440 1 38 if ($exception_class =~ /[^\w:']/)
1462 1 37 if $E
1493 0 0 if $caller eq $filename
1499 148 97 if ($caller eq $filename)
1502 91 57 unless (defined $wrapped_sub)
1505 0 91 if substr($call, 0, 6) ne 'CORE::'
1513 33 58 if (exists $reusable_builtins{$call})
1517 73 18 unless (defined $code)
1529 15 58 unless (defined $wrapper_pkg)
1544 93 4 if defined $orig_sub
1571 2 2 if exists $reusable_builtins{$call}
1574 4 0 unless ($orig_sub)
1597 2890 46 if (defined $proto)
1611 124 47 if (defined $proto) { }
1622 56 115 unless ($lexical)
1630 1 170 if $call eq 'CORE::exec'
1635 0 171 if $Debug
1650 133 38 if (defined $wrapper_pkg) { }
1651 2 9 if (@_ == 1) { }
4 4 elsif (@_ == 2) { }
4 0 elsif (@_ >= 3) { }
1653 0 1 if (@_ == 0) { }
0 1 elsif (@_ == 1) { }
2 1 if (@_ == 1) { }
0 0 elsif (@_ == 2) { }
1659 0 171 unless ($code)
1660 0 0 $core ? :