From c01c1f0dc3aef0fc53c73558fd9554442d6c8540 Mon Sep 17 00:00:00 2001 From: Ben Tilly Date: Sun, 2 Dec 2001 06:32:51 -0500 Subject: [PATCH] RE: More verbose POD for Carp Message-ID: <3C0A9748@operamail.com> p4raw-id: //depot/perl@13426 --- lib/Carp.pm | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/Carp.pm b/lib/Carp.pm index 84508b2..5dbae29 100644 --- a/lib/Carp.pm +++ b/lib/Carp.pm @@ -155,7 +155,15 @@ sub export_fail { sub longmess { { local $@; require Carp::Heavy; } # XXX fix require to not clear $@? - goto &longmess_heavy; + # Icky backwards compatibility wrapper. :-( + my $call_pack = caller(); + if ($Internal{$call_pack} or $CarpInternal{$call_pack}) { + return longmess_heavy(@_); + } + else { + local $CarpLevel = $CarpLevel + 1; + return longmess_heavy(@_); + } } @@ -167,7 +175,10 @@ sub longmess { sub shortmess { # Short-circuit &longmess if called via multiple packages { local $@; require Carp::Heavy; } # XXX fix require to not clear $@? - goto &shortmess_heavy; + # Icky backwards compatibility wrapper. :-( + my $call_pack = caller(); + local @CARP_NOT = caller(); + shortmess_heavy(@_); } -- 2.7.4