From c94b42ea5841e1ad13f8a690f05308e25164ef27 Mon Sep 17 00:00:00 2001 From: David Mitchell Date: Sun, 8 Jan 2012 15:45:39 +0000 Subject: [PATCH 1/1] clarify how $SIG{__DIE__} can return It can return via 'goto &sub', but not via 'goto LABEL'. The docs originally just said 'via goto' See [perl #44367]. --- pod/perlvar.pod | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pod/perlvar.pod b/pod/perlvar.pod index 1727c6d..61ad1a9 100644 --- a/pod/perlvar.pod +++ b/pod/perlvar.pod @@ -558,10 +558,10 @@ The routine indicated by C<$SIG{__DIE__}> is called when a fatal exception is about to be thrown. The error message is passed as the first argument. When a C<__DIE__> hook routine returns, the exception processing continues as it would have in the absence of the hook, -unless the hook routine itself exits via a C, a loop exit, or a -C. The C<__DIE__> handler is explicitly disabled during the -call, so that you can die from a C<__DIE__> handler. Similarly for -C<__WARN__>. +unless the hook routine itself exits via a C, a loop exit, +or a C. The C<__DIE__> handler is explicitly disabled during +the call, so that you can die from a C<__DIE__> handler. Similarly +for C<__WARN__>. Due to an implementation glitch, the C<$SIG{__DIE__}> hook is called even inside an C. Do not use this to rewrite a pending -- 1.8.3.1