1 /*- 2 * %sccs.include.proprietary.c% 3 */ 4 5 #ifndef lint 6 static char sccsid[] = "@(#)0.extr.c 8.1 (Berkeley) 06/06/93"; 7 #endif /* not lint */ 8 9 #include <stdio.h> 10 #include "def.h" 11 struct lablist {long labelt; struct lablist *nxtlab; }; 12 struct lablist *endlab, *errlab, *reflab, *linelabs, *newlab; 13 14 int nameline; /* line number of function/subroutine st., if any */ 15 int stflag; /* determines whether at beginning or middle of block of straight line code */ 16 17 18 19 int nlabs, lswnum, swptr, flag, 20 counter, p1, p3, begline, endline, r1,r2, endcom; 21 long begchar, endchar, comchar; 22 23 24 char *pred, *inc, *prerw, *postrw, *exp, *stcode; 25 26 #define maxdo 20 /* max nesting of do loops */ 27 long dostack[maxdo]; /* labels of do nodes */ 28 int doloc[maxdo]; /* loc of do node */ 29 int doptr; 30 31 32 struct list *FMTLST; /* list of FMTVX's generated */ 33 struct list *ENTLST; /* list of STLNVX nodes corresponding to entry statements */ 34 long rtnbeg; /* number of chars up to beginning of current routine */ 35