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