Branch Coverage

blib/lib/Fatal.pm
Criterion Covered Total %
branch 177 214 82.7


line true false branch
362 2 141 unless @_
367 130 11 if ($_[0] eq ':lexical')
376 2 128 if ($class ne 'autodie' and not $class->isa('autodie'))
377 2 0 if ($class eq 'Fatal') { }
409 47 83 if (@_ == 0)
414 1 129 if (grep {$_ eq ':void';} @_)
419 1 139 if (grep {$_ eq ':lexical';} @_)
447 2 2999 if ($func eq ':void') { }
3 2996 elsif ($func eq '!') { }
464 3 2993 if (substr($func, 0, 1) eq '!')
477 2996 0 unless $sub =~ /::/
483 1 2995 if (not $lexical and $^H{$NO_PACKAGE}{$sub})
503 2936 56 if $lexical
509 128 7 if ($lexical)
547 0 11 if ($_[0] ne ':lexical')
559 6 5 @_ ? :
565 330 0 unless $sub =~ /::/
570 1 329 if (exists $Package_Fatal{$sub})
601 139 18 if (@args < 2)
604 0 139 unless @args
607 76 63 unless exists $TAGS{$args[0]}
627 13 48 if (exists $TAGS{$a}) { }
659 36 12 if ($letter ne ':' and $a ne '!')
660 2 34 if $seen{$a}++
661 2 32 if ($letter eq '!' and $seen{substr $a, 1}++)
697 60 346 if (my $cached = $tag_cache{$tag})
701 1 345 unless (exists $TAGS{$tag})
710 4 341 if (@to_process == 1 and substr($to_process[0], 0, 1) eq ':')
725 311 1825 if (substr($item, 0, 1) eq ':') { }
732 1825 0 unless $seen{$subname}++
768 106 66 if (@argvs == 1) { }
784 46 133 if (@argv and $argv[-1] =~ /[#\@]_/)
839 0 287 if ($void and not $back_compat)
850 81 206 if ($back_compat)
856 0 81 if ($call eq 'CORE::system')
864 3 78 if ($void) { }
865 2 1 $core ? :
869 77 1 $core ? :
884 164 42 $core ? :
893 164 42 if ($core) { }
919 2 204 if ($call eq 'CORE::system')
975 1 203 if ($call eq 'CORE::flock')
993 0 1 if ($try_EAGAIN)
1025 7 196 if (exists $Returns_num_things_changed{$call})
1070 25 171 if ($hints and (ref $$hints{'list'} || '') eq 'CODE') { }
6 165 elsif ($hints) { }
0 165 elsif ($hints) { }
1115 26 170 if ($hints and (ref $$hints{'scalar'} || '') eq 'CODE') { }
5 165 elsif ($hints) { }
0 165 elsif ($hints) { }
1139 128 37 $use_defined_or ? :
1172 2995 0 if (index($sub, '::') == -1) { }
1174 0 2995 if (substr($name, 0, 1) eq '&')
1185 58 2937 unless ($lexical)
1193 0 2995 if $Debug
1194 1 2994 unless $name =~ /^\w+$/
1196 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') { }
1209 1 353 if ($Package_Fatal{$sub} and exists $CORE_prototype_cache{"CORE::$name"}) { }
1231 308 45 if (exists $Is_fatalised_sub{$sref})
1241 0 308 if (defined $s) { }
1255 45 308 unless ($core)
1266 1 44 if ($insist and not $hints)
1302 0 3 if ($E)
1306 0 3 if ($IPC::System::Simple::VERSION < 0.12)
1326 1087 1549 if (exists $CORE_prototype_cache{$call}) { }
1335 0 1549 if $E
1336 1 1548 unless defined $proto
1353 2936 56 if ($lexical) { }
1357 2 54 if $void
1360 0 2992 if (my $subref = $$cache{$cache_type})
1369 1371 1621 if ($core and exists $reusable_builtins{$call})
1373 0 1371 if (not $lexical and defined $code)
1379 98 0 unless ($lexical and $core or defined $code)
1382 23 75 if exists $reusable_builtins{$call}
1386 23 75 unless (defined $wrapper_pkg)
1405 2936 56 if ($lexical)
1440 39 54 unless ($class_loaded{$exception_class})
1441 1 38 if ($exception_class =~ /[^\w:']/)
1463 1 37 if $E
1494 0 0 if $caller eq $filename
1500 148 97 if ($caller eq $filename)
1503 91 57 unless (defined $wrapped_sub)
1506 0 91 if substr($call, 0, 6) ne 'CORE::'
1514 33 58 if (exists $reusable_builtins{$call})
1518 73 18 unless (defined $code)
1530 15 58 unless (defined $wrapper_pkg)
1545 93 4 if defined $orig_sub
1572 2 2 if exists $reusable_builtins{$call}
1575 4 0 unless ($orig_sub)
1598 2890 46 if (defined $proto)
1612 124 47 if (defined $proto) { }
1623 56 115 unless ($lexical)
1631 1 170 if $call eq 'CORE::exec'
1636 0 171 if $Debug
1651 133 38 if (defined $wrapper_pkg) { }
1652 2 5 if (@_ == 1) { }
0 4 elsif (@_ == 2) { }
4 0 elsif (@_ >= 3) { }
1654 0 1 if (@_ == 1) { }
0 6 elsif (@_ == 2) { }
6 0 if (@_ == 0) { }
0 0 elsif (@_ == 1) { }
1660 0 171 unless ($code)
1661 0 0 $core ? :