X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FSub-Nary.git;a=blobdiff_plain;f=lib%2FSub%2FNary.pm;fp=lib%2FSub%2FNary.pm;h=ef72c7fa8428d4c44554e8ecab0aceececbf6eec;hp=159dd8e6bc9a31fb753478eec7c573feb852bad1;hb=56f190d50decd03a6c45dfb4f77b5a535460a174;hpb=3a7f23b3ef06db23f3bd2f2707e70b61c6a15b4f diff --git a/lib/Sub/Nary.pm b/lib/Sub/Nary.pm index 159dd8e..ef72c7f 100644 --- a/lib/Sub/Nary.pm +++ b/lib/Sub/Nary.pm @@ -523,7 +523,14 @@ sub pp_leavetry { my ($r, $l) = $self->inspect_kids($op); if (defined $r) { my $d = delete $r->{die}; - $r->{0} += $d if defined $d; + return $r, $l if not defined $d; + if (defined $l) { + my $z = delete $l->{0}; + $l = { %$l, 0 => $z }; + $l->{0} += $d; + } else { + $l = { 0 => $d }; + } } return $r, $l;