1 /* 2 * @(#)1.incl.h 4.1 (Berkeley) 83/02/11 3 */ 4 #define maxlsw 10 /* max number of switches and labels per statement */ 5 #define implicit 0L /* "label" of following line so all flow can be treated as jump to label */ 6 struct lablist {long labelt; struct lablist *nxtlab; }; 7 extern struct lablist *endlab, *errlab, *reflab, *linelabs, *newlab; 8 extern long label(); 9 10 extern int routbeg; /* line number of first line of routine */ 11 extern int nameline; /* line number of function/subroutine st., if any */ 12 extern int stflag; /* determines whether at beginning or middle of block of straight line code */ 13 14 15 16 extern char buffer[]; 17 extern int endbuf; 18 19 extern int nlabs, lswnum, swptr, flag, 20 counter, p1, p3, begline, endline, r1,r2, endcom; 21 extern long begchar, endchar, comchar; 22 23 24 /* statement types not associated with actual node types */ 25 #define contst -1 26 #define ungo -2 27 #define arithif -3 28 #define readst -8 29 #define writest -9 30 #define entry -10 31 32 33 extern char *pred, *inc, *prerw, *postrw, *exp, *stcode; 34 35 #define maxdo 20 /* max nesting of do loops */ 36 extern long dostack[maxdo]; /* labels of do nodes */ 37 extern int doloc[maxdo]; /* loc of do node */ 38 extern int doptr; 39 40 41 extern struct list *FMTLST; /* list of FMTVX's generated */ 42 extern struct list *ENTLST; /* list of STLNVX nodes corresponding to entry statements */ 43