| line | l | !l | condition | 
 
| 156 | 0 | 0 | carp('IPC::Exe::exe() cannot create pipe to STDIN', "\n  ", $!) and return () | 
 
| 168 | 0 | 0 | carp('IPC::Exe::exe() cannot create pipe from STDERR', "\n  ", $!) and return () | 
 
| 212 | 0 | 0 | carp('IPC::Exe::exe() cannot dup STDIN', "\n  ", $!) and return () | 
 
| 325 | 0 | 60 | not $Reader || $opt{'stdout'} and $reap == $gotchild || $reap == -1 || $reap == 0 and $ret[0] = -1 | 
 
| 636 | 0 | 0 | carp('IPC::Exe::bg() cannot dup STDOUT', "\n  ", $!) and return () | 
 
| 793 | 0 | 0 | carp('IPC::Exe cannot dup STDIN', "\n  ", $!) and return undef | 
 
| 797 | 0 | 0 | carp('IPC::Exe cannot dup STDOUT', "\n  ", $!) and return undef | 
 
| 801 | 0 | 0 | carp('IPC::Exe cannot dup STDERR', "\n  ", $!) and return undef | 
| line | !l | l&&!r | l&&r | condition | 
 
| 111 | 0 | 1171 | 0 | $] >= 5.008 and ${^TAINT} | 
 
| 116 | 1078 | 1 | 45 | @_ == 1 and _reftype($_[0]) eq 'CODE' | 
 
| 238 | 990 | 0 | 0 | defined $IPC::Exe::_binmode_io and index($IPC::Exe::_binmode_io, ':') == 0 | 
 
| 325 | 172 | 60 | 0 | not $Reader || $opt{'stdout'} and $reap == $gotchild || $reap == -1 || $reap == 0 | 
 
| 333 | 801 | 1 | 127 | $status[0] == -1 and $Reader | 
 
|  | 802 | 127 | 0 | $status[0] == -1 and $Reader and $reap == $gotchild | 
 
|  | 128 | 0 | 0 | $status[0] == -1 and $Reader and $reap == $gotchild and @ret | 
 
| 346 | 921 | 0 | 8 | $opt{'stdin'} && _reftype($opt{'stdin'}) ne 'SCALAR' | 
 
|  | 924 | 0 | 5 | $opt{'stdout'} && _reftype($opt{'stdout'}) ne 'SCALAR' | 
 
|  | 925 | 0 | 4 | $opt{'stderr'} && _reftype($opt{'stderr'}) ne 'SCALAR' | 
 
| 390 | 44 | 0 | 0 | defined $IPC::Exe::_binmode_io and index($IPC::Exe::_binmode_io, ':') == 0 | 
 
| 395 | 0 | 0 | 0 | binmode *STDIN, $layer and binmode *STDOUT, $layer | 
 
| 418 | 4 | 0 | 0 | NON_UNIX and _is_fh($EXE_GO) | 
 
| 447 | 0 | 0 | 1 | not $is_sysopen and defined $args[0] | 
 
| 530 | 0 | 0 | 0 | _is_fh($FH1) and _is_fh($FH2) | 
 
|  | 0 | 0 | 0 | _is_fh($FH1) and _is_fh($FH2) and open $SWAP, '>&', $FH1 | 
 
|  | 0 | 0 | 0 | _is_fh($FH1) and _is_fh($FH2) and open $SWAP, '>&', $FH1 and open $FH1, '>&', $FH2 | 
 
|  | 0 | 0 | 0 | _is_fh($FH1) and _is_fh($FH2) and open $SWAP, '>&', $FH1 and open $FH1, '>&', $FH2 and open $FH2, '>&=', $SWAP | 
 
| 562 | 0 | 0 | 6 | _is_fh($FH2) and open $FH1, $op, $FH2 | 
 
| 580 | 40 | 0 | 0 | NON_UNIX && _is_fh($EXE_GO) | 
 
| 588 | 0 | 0 | 0 | carp('IPC::Exe::exe() failed to exec the command below', ' - ', $!, "\n  ", _stringify_args(@cmd), "\n") and _quit(-1) | 
 
|  | 0 | 40 | 0 | $restore_fh ? print($EXE_GO "exe_with_exec\n") : 1 and exec do {
	$cmd[0]
} @cmd | 
 
| 629 | 0 | 0 | 0 | defined $opt{'wait'} and $opt{'wait'} >= 0 | 
 
| 707 | 0 | 0 | 0 | $defined_grand and $gotgrand | 
 
| 770 | 0 | 0 | 0 | $defined_child and $defined_grand | 
 
| 771 | 0 | 0 | 0 | $defined_child and not $defined_grand | 
 
| 772 | 0 | 0 | 0 | not $defined_child and $defined_grand | 
 
|  | 0 | 0 | 0 | not $defined_child and $defined_grand and not $gotgrand | 
| line | l | !l&&r | !l&&!r | condition | 
 
| 87 | 1 | 1 | 2 | @bad_args or @bad_env | 
 
| 102 | 20 | 0 | 6 | ('STDIN', 'STDOUT', 'STDERR')[$n] || "FH[$n]" | 
 
| 103 | 4 | 2 | 0 | $$slots[$n] ||= gensym | 
 
| 150 | 2 | 12 | 1046 | $IPC::Exe::_stdin || !!$opt{'stdin'} | 
 
| 208 | 517 | 517 | 0 | defined $Preexec or @cmd_list | 
 
| 301 | 9 | 0 | 920 | $IPC::Exe::_stdin or $opt{'stdout'} | 
 
|  | 9 | 0 | 920 | $IPC::Exe::_stdin or $opt{'stdout'} or $opt{'stderr'} | 
 
| 310 | 737 | 0 | 192 | $Reader or $opt{'stdout'} | 
 
| 319 | 128 | 104 | 697 | $status[0] == -1 or $status[0] == 65280 | 
 
| 325 | 167 | 5 | 60 | $Reader || $opt{'stdout'} | 
 
|  | 60 | 0 | 0 | $reap == $gotchild || $reap == -1 || $reap == 0 | 
 
|  | 60 | 40 | 132 | not $Reader || $opt{'stdout'} and $reap == $gotchild || $reap == -1 || $reap == 0 and $ret[0] = -1 or $reap == $gotchild | 
 
| 471 | 0 | 0 | 0 | @args < 3 || @args > 4 |