develooper Front page | perl.perl5.porters | Postings from September 1999

[PATCH] (Was: deprecating SIGDIE)

Thread Previous | Thread Next
From:
Kurt D. Starsinic
Date:
September 29, 1999 12:27
Subject:
[PATCH] (Was: deprecating SIGDIE)
Message ID:
19990929151650.E26675@O2.chapin.edu
On Wed, Sep 29, 1999 at 09:42:00AM -0700, Gurusamy Sarathy wrote:
> On Wed, 29 Sep 1999 07:45:34 MDT, Tom Christiansen wrote:
> >    One must also write such handlers to inspect the abstruse C<$^S>
> >    variable to detect whether the thing was being trapped anyway:
> >
> >	$SIG{__DIE__} = sub {
> >	    return if $^S;
> >	    ....
> >	};   
> >
> >I'd much rather fix this right now than document the bug.  Sarathy?
> >Larry?  Is it toast yet?
> 
> It continues to live on my todo list, and no, I haven't seen any
> patches yet.

    Well, on a related note, here's a pseudo-signal cleanup patch I've
been meaning to post for a while.  We don't have $SIG{__PARSE__}, so
let's stop pretending.  ;^)

    - Kurt

--- mg.c.Orig	Wed Sep 29 14:53:29 1999
+++ mg.c	Wed Sep 29 14:53:54 1999
@@ -910,8 +910,6 @@
 	    svp = &PL_diehook;
 	else if (strEQ(s,"__WARN__"))
 	    svp = &PL_warnhook;
-	else if (strEQ(s,"__PARSE__"))
-	    svp = &PL_parsehook;
 	else
 	    Perl_croak(aTHX_ "No such hook: %s", s);
 	i = 0;

--- perl.c.Orig	Wed Sep 29 15:01:05 1999
+++ perl.c	Wed Sep 29 15:01:15 1999
@@ -327,8 +327,6 @@
     PL_warnhook = Nullsv;
     SvREFCNT_dec(PL_diehook);
     PL_diehook = Nullsv;
-    SvREFCNT_dec(PL_parsehook);
-    PL_parsehook = Nullsv;
 
     /* call exit list functions */
     while (PL_exitlistlen-- > 0)

--- objXSUB.h.Orig	Wed Sep 29 15:00:39 1999
+++ objXSUB.h	Wed Sep 29 15:00:46 1999
@@ -376,8 +376,6 @@
 #define PL_padix		(*Perl_Ipadix_ptr(aTHXo))
 #undef  PL_padix_floor
 #define PL_padix_floor		(*Perl_Ipadix_floor_ptr(aTHXo))
-#undef  PL_parsehook
-#define PL_parsehook		(*Perl_Iparsehook_ptr(aTHXo))
 #undef  PL_patchlevel
 #define PL_patchlevel		(*Perl_Ipatchlevel_ptr(aTHXo))
 #undef  PL_pending_ident

--- intrpvar.h.Orig	Wed Sep 29 15:00:10 1999
+++ intrpvar.h	Wed Sep 29 15:00:16 1999
@@ -23,7 +23,6 @@
 PERLVAR(Iorigfilename,	char *)
 PERLVAR(Idiehook,	SV *)
 PERLVAR(Iwarnhook,	SV *)
-PERLVAR(Iparsehook,	SV *)
 PERLVAR(Icddir,		char *)		/* switches */
 PERLVAR(Iminus_c,	bool)
 PERLVARA(Ipatchlevel,10,char)

--- embedvar.h.Orig	Wed Sep 29 14:59:44 1999
+++ embedvar.h	Wed Sep 29 14:59:53 1999
@@ -352,7 +352,6 @@
 #define PL_pad_reset_pending	(PERL_GET_INTERP->Ipad_reset_pending)
 #define PL_padix		(PERL_GET_INTERP->Ipadix)
 #define PL_padix_floor		(PERL_GET_INTERP->Ipadix_floor)
-#define PL_parsehook		(PERL_GET_INTERP->Iparsehook)
 #define PL_patchlevel		(PERL_GET_INTERP->Ipatchlevel)
 #define PL_pending_ident	(PERL_GET_INTERP->Ipending_ident)
 #define PL_perl_destruct_level	(PERL_GET_INTERP->Iperl_destruct_level)
@@ -623,7 +622,6 @@
 #define PL_pad_reset_pending	(vTHX->Ipad_reset_pending)
 #define PL_padix		(vTHX->Ipadix)
 #define PL_padix_floor		(vTHX->Ipadix_floor)
-#define PL_parsehook		(vTHX->Iparsehook)
 #define PL_patchlevel		(vTHX->Ipatchlevel)
 #define PL_pending_ident	(vTHX->Ipending_ident)
 #define PL_perl_destruct_level	(vTHX->Iperl_destruct_level)
@@ -896,7 +894,6 @@
 #define PL_Ipad_reset_pending	PL_pad_reset_pending
 #define PL_Ipadix		PL_padix
 #define PL_Ipadix_floor		PL_padix_floor
-#define PL_Iparsehook		PL_parsehook
 #define PL_Ipatchlevel		PL_patchlevel
 #define PL_Ipending_ident	PL_pending_ident
 #define PL_Iperl_destruct_level	PL_perl_destruct_level

--- Porting/findvars.Orig	Wed Sep 29 14:58:13 1999
+++ Porting/findvars	Wed Sep 29 14:58:20 1999
@@ -238,7 +238,6 @@
 pad_reset_pending
 padix
 padix_floor
-parsehook
 patchlevel
 patleave
 pending_ident


Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About