This is cmpcatch.c in view mode; [Download] [Up]
#include <cmpinclude.h>
#include "cmpcatch.h"
init_cmpcatch(){do_init(VV);}
/* local entry for function C1CATCH */
static object LI1(V2)
register object V2;
{ VMB1 VMS1 VMV1
TTL:;
{object V3;
object V4;
V3= (VFUN_NARGS=2,(*(LnkLI22))(VV[0],Ct));
V4= Cnil;
setq(VV[1],number_plus(symbol_value(VV[1]),small_fixnum(1)));
if(!(endp((V2)))){
goto T5;}
(void)((*(LnkLI23))(VV[2],small_fixnum(1),small_fixnum(0)));
T5:;
V4= (*(LnkLI24))(car((V2)));
(void)((*(LnkLI25))((V3),cadr((V4))));
V2= (*(LnkLI26))(cdr((V2)));
(void)((*(LnkLI25))((V3),cadr((V2))));
{object V5 = list(4,VV[2],(V3),(V4),(V2));
VMR1(V5)}}
}
/* local entry for function C2CATCH */
static object LI2(V8,V9)
object V8;object V9;
{ VMB2 VMS2 VMV2
bds_check;
TTL:;
bds_bind(VV[3],symbol_value(VV[3]));
bds_bind(VV[4],VV[5]);
V10= (*(LnkLI27))((V8));
bds_unwind1;
princ_str("\n if(nlj_active)",VV[6]);
princ_str("\n {nlj_active=FALSE;frs_pop();",VV[6]);
(void)((VFUN_NARGS=2,(*(LnkLI28))(VV[7],VV[8])));
princ_char(125,VV[6]);
princ_str("\n else{",VV[6]);
base[1]= make_cons(VV[10],symbol_value(VV[9]));
bds_bind(VV[9],base[1]);
base[2]= (V9);
vs_top=(vs_base=base+2)+1;
(void) (*Lnk29)();
vs_top=sup;
bds_unwind1;
princ_char(125,VV[6]);
{object V11 = Cnil;
bds_unwind1;
VMR2(V11)}
}
/* local entry for function SET-PUSH-CATCH-FRAME */
static object LI3(V13)
object V13;
{ VMB3 VMS3 VMV3
TTL:;
princ_str("\n frs_push(FRS_CATCH,",VV[6]);
(void)((*(LnkLI30))((V13)));
princ_str(");",VV[6]);
{object V14 = Cnil;
VMR3(V14)}
}
/* local entry for function C1UNWIND-PROTECT */
static object LI4(V16)
register object V16;
{ VMB4 VMS4 VMV4
bds_check;
TTL:;
{object V17;
object V18;
V17= (VFUN_NARGS=2,(*(LnkLI22))(VV[0],Ct));
V18= Cnil;
setq(VV[1],number_plus(symbol_value(VV[1]),small_fixnum(1)));
if(!(endp((V16)))){
goto T35;}
(void)((*(LnkLI23))(VV[11],small_fixnum(1),small_fixnum(0)));
T35:;
base[0]= make_cons(VV[13],symbol_value(VV[12]));
base[1]= make_cons(VV[13],symbol_value(VV[14]));
base[2]= make_cons(VV[13],symbol_value(VV[15]));
bds_bind(VV[12],base[0]);
bds_bind(VV[14],base[1]);
bds_bind(VV[15],base[2]);
V19= (*(LnkLI24))(car((V16)));
bds_unwind1;
bds_unwind1;
bds_unwind1;
V18= V19;
(void)((*(LnkLI25))((V17),cadr((V18))));
V16= (*(LnkLI26))(cdr((V16)));
(void)((*(LnkLI25))((V17),cadr((V16))));
{object V20 = list(4,VV[11],(V17),(V18),(V16));
VMR4(V20)}}
}
/* local entry for function C2UNWIND-PROTECT */
static object LI5(V23,V24)
object V23;object V24;
{ VMB5 VMS5 VMV5
bds_check;
TTL:;
{object V25;
object V26;
bds_bind(VV[3],symbol_value(VV[3]));
V25= list(2,VV[16],(*(LnkLI31))());
V26= Cnil;
princ_str("\n {object tag;frame_ptr fr;object p;bool active;",VV[6]);
princ_str("\n frs_push(FRS_PROTECT,Cnil);",VV[6]);
princ_str("\n if(nlj_active){tag=nlj_tag;fr=nlj_fr;active=TRUE;}",VV[6]);
princ_str("\n else{",VV[6]);
{object V27;
V27= Cnil;
bds_bind(VV[4],VV[17]);
(void)((*(LnkLI27))((V23)));
V26= (V27);
bds_unwind1;}
princ_str("\n active=FALSE;}",VV[6]);
princ_str("\n ",VV[6]);
(void)((*(LnkLI30))((V25)));
princ_str("=Cnil;",VV[6]);
princ_str("\n while(vs_base<vs_top)",VV[6]);
princ_str("\n {",VV[6]);
(void)((*(LnkLI30))((V25)));
princ_str("=MMcons(vs_top[-1],",VV[6]);
(void)((*(LnkLI30))((V25)));
princ_str(");vs_top--;}",VV[6]);
princ_str("\n ",VV[6]);
(void)((*(LnkLI32))());
princ_str("\n nlj_active=FALSE;frs_pop();",VV[6]);
bds_bind(VV[4],VV[18]);
V28= (*(LnkLI27))((V24));
bds_unwind1;
princ_str("\n vs_base=vs_top=base+",VV[6]);
(void)((*(LnkLI30))((VV[3]->s.s_dbind)));
princ_char(59,VV[6]);
setq(VV[19],Ct);
princ_str("\n for(p= ",VV[6]);
(void)((*(LnkLI30))((V25)));
princ_str(";!endp(p);p=MMcdr(p))vs_push(MMcar(p));",VV[6]);
princ_str("\n if(active)unwind(fr,tag);else{",VV[6]);
if(((V26))==Cnil){
goto T95;}
V29= car((V26));
goto T93;
T95:;
V29= Cnil;
T93:;
(void)((VFUN_NARGS=3,(*(LnkLI28))(VV[7],Cnil,V29)));
princ_str("}}",VV[6]);
{object V30 = Cnil;
bds_unwind1;
VMR5(V30)}}
}
/* local entry for function C1THROW */
static object LI6(V32)
register object V32;
{ VMB6 VMS6 VMV6
TTL:;
{object V33;
object V34;
V33= (VFUN_NARGS=0,(*(LnkLI22))());
V34= Cnil;
if(endp((V32))){
goto T101;}
if(!(endp(cdr((V32))))){
goto T100;}
T101:;
V35 = make_fixnum(length((V32)));
(void)((*(LnkLI23))(VV[20],small_fixnum(2),V35));
T100:;
if(endp(cddr((V32)))){
goto T105;}
V36 = make_fixnum(length((V32)));
(void)((*(LnkLI33))(VV[20],small_fixnum(2),V36));
T105:;
V34= (*(LnkLI24))(car((V32)));
(void)((*(LnkLI25))((V33),cadr((V34))));
V32= (*(LnkLI24))(cadr((V32)));
(void)((*(LnkLI25))((V33),cadr((V32))));
{object V37 = list(4,VV[20],(V33),(V34),(V32));
VMR6(V37)}}
}
/* local entry for function C2THROW */
static object LI7(V40,V41)
register object V40;object V41;
{ VMB7 VMS7 VMV7
bds_check;
TTL:;
{object V42;
bds_bind(VV[3],symbol_value(VV[3]));
V42= Cnil;
princ_str("\n {frame_ptr fr;",VV[6]);
{object V43= car((V40));
if((V43!= VV[34]))goto T118;
V42= caddr((V40));
goto T117;
T118:;
if((V43!= VV[21]))goto T120;
V42= make_cons(VV[21],caddr((V40)));
goto T117;
T120:;
V42= list(2,VV[16],(*(LnkLI31))());
bds_bind(VV[4],(V42));
V44= (*(LnkLI27))((V40));
bds_unwind1;}
T117:;
princ_str("\n fr=frs_sch_catch(",VV[6]);
(void)((*(LnkLI30))((V42)));
princ_str(");",VV[6]);
princ_str("\n if(fr==NULL) FEerror(\"The tag ~s is undefined.\",1,",VV[6]);
(void)((*(LnkLI30))((V42)));
princ_str(");",VV[6]);
bds_bind(VV[4],VV[17]);
V45= (*(LnkLI27))((V41));
bds_unwind1;
princ_str("\n unwind(fr,",VV[6]);
(void)((*(LnkLI30))((V42)));
princ_str(");}",VV[6]);
{object V46 = Cnil;
bds_unwind1;
VMR7(V46)}}
}
static object LnkTLI33(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[33],&LnkLI33,3,ap);} /* TOO-MANY-ARGS */
static object LnkTLI32(){return call_proc0(VV[32],&LnkLI32);} /* RESET-TOP */
static object LnkTLI31(){return call_proc0(VV[31],&LnkLI31);} /* VS-PUSH */
static object LnkTLI30(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[30],&LnkLI30,1,ap);} /* WT1 */
static LnkT29(){ call_or_link(VV[29],&Lnk29);} /* C2EXPR */
static object LnkTLI28(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[28],&LnkLI28,ap);} /* UNWIND-EXIT */
static object LnkTLI27(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[27],&LnkLI27,1,ap);} /* C2EXPR* */
static object LnkTLI26(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[26],&LnkLI26,1,ap);} /* C1PROGN */
static object LnkTLI25(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[25],&LnkLI25,2,ap);} /* ADD-INFO */
static object LnkTLI24(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[24],&LnkLI24,1,ap);} /* C1EXPR */
static object LnkTLI23(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[23],&LnkLI23,3,ap);} /* TOO-FEW-ARGS */
static object LnkTLI22(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[22],&LnkLI22,ap);} /* MAKE-INFO */
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.