1: # define _actsize 1500
2: # define _memsize 3500
3: # define _nstates 400
4: # define _nterms 95
5: # define _nprod 250
6: # define _nnonterm 100
7: # define _tempsize 400
8: # define _cnamsz 2000
9: # define _lsetsize 200
10: # define _wsetsize 150
11:
12: # define _tbitset 6
13:
14: int tbitset; /* size of lookahed sets */
15: int nolook 0; /* flag to suppress lookahead computations */
16: struct looksets { int lset[ _tbitset ]; } ;
17: struct item { int *pitem; } ;
18:
19: /* this file contains the definitions for most externally known data */
20:
21: int nstate 0; /* number of states */
22: struct item *pstate[_nstates]; /* pointers to the descriptions of the states */
23: int apstate[_nstates]; /* index to the actions for the states */
24: int tystate[_nstates]; /* contains type information about the states */
25: int stsize _nstates; /* maximum number of states, at present */
26: int memsiz _memsize; /* maximum size for productions and states */
27: int mem0[_memsize] ; /* production storage */
28: int *mem mem0;
29: int amem[_actsize]; /* action table storage */
30: int actsiz _actsize; /* action table size */
31: int memact 0; /* next free action table position */
32: int nprod 1; /* number of productions */
33: int *prdptr[_nprod]; /* pointers to descriptions of productions */
34: int prdlim _nprod ; /* the maximum number of productions */
35: /* levprd - productions levels to break conflicts */
36: int levprd[_nprod] {0,0};
37: /* last two bits code associativity:
38: 0 = no definition
39: 1 = left associative
40: 2 = binary
41: 3 = right associative
42: bit 04 is 1 if the production has an action
43: the high 13 bits have the production level
44: */
45: int nterms 0; /* number of terminals */
46: int tlim _nterms ; /* the maximum number of terminals */
47: /* the ascii representations of the terminals */
48: int extval 0; /* start of output values */
49: struct sxxx1 {char *name; int value;} trmset[_nterms];
50: char cnames[_cnamsz];
51: int cnamsz _cnamsz;
52: char *cnamp;
53: int maxtmp _tempsize; /* the size of the temp1 array */
54: int temp1[_tempsize]; /* temporary storage, indexed by terms + nterms or states */
55: int temp2[_nnonterm]; /* temporary storage indexed by nonterminals */
56: int trmlev[_nterms]; /* vector with the precedence of the terminals */
57: /* The levels are the same as for levprd, but bit 04 is always 0 */
58: /* the ascii representations of the nonterminals */
59: struct sxxx2 { char *name; } nontrst[_nnonterm];
60: int ntlim _nnonterm ; /* limit to the number of nonterminals */
61: int indgo[_nstates]; /* index to the stored goto table */
62: int ***pres; /* vector of pointers to the productions yielding each nonterminal */
63: struct looksets **pfirst; /* vector of pointers to first sets for each nonterminal */
64: int *pempty 0 ; /* table of nonterminals nontrivially deriving e */
65: int nnonter -1; /* the number of nonterminals */
66: int lastred 0; /* the number of the last reduction of a state */
67: int ftable; /* y.tab.c file */
68: int foutput; /* y.output file */
69: int arrndx; /* used in the output of arrays on y.tab.c */
70: int zzcwset 0;
71: int zzpairs 0;
72: int zzgoent 0;
73: int zzgobest 0;
74: int zzacent 0;
75: int zzacsave 0;
76: int zznsave 0;
77: int zzclose 0;
78: int zzsrconf 0;
79: int zzrrconf 0;
80: char *ctokn;
81: int lineno 1; /* current input line number */
82: int peekc -1; /* look-ahead character */
83: int tstates[ _nterms ]; /* states generated by terminal gotos */
84: int ntstates[ _nnonterm ]; /* states generated by nonterminal gotos */
85: int mstates[ _nstates ]; /* chain of overflows of term/nonterm generation lists */
86:
87: struct looksets clset;
88: struct looksets lkst [ _lsetsize ];
89: int nlset 0; /* next lookahead set index */
90: int lsetsz _lsetsize; /* number of lookahead sets */
91:
92: struct wset { int *pitem, flag, ws[_tbitset]; } wsets[ _wsetsize ];
93: int cwset;
94: int wssize _wsetsize;
95:
96: int numbval; /* the value of an input number */
97: int rflag 0; /* ratfor flag */
98: int oflag 0; /* optimization flag */
99:
100: int ndefout 3; /* number of defined symbols output */
101: int nerrors 0; /* number of errors */
102: int fatfl 1; /* if on, error is fatal */
103: int machine; /* has a number describing the machine */
Defined variables
amem
defined in line
29; used 8 times
clset
defined in line
87; used 12 times
cnamp
defined in line
52; used 7 times
ctokn
defined in line
80; used 32 times
cwset
defined in line
93; used 21 times
indgo
defined in line
61; used 2 times
lkst
defined in line
88; used 4 times
mem
defined in line
28; used 26 times
mem0
defined in line
28; used 4 times
nlset
defined in line
89; used 5 times
nnonter
defined in line
65; used 24 times
- in /usr/source/yacc/source/y1.c line
161,
167-173(3)
- in /usr/source/yacc/source/y2.c line
197-199(3),
398
- in /usr/source/yacc/source/y3.c line
6-7(2),
30-31(2),
50,
61-64(2),
160-161(2),
206,
233,
239
- in /usr/source/yacc/source/y4.c line
165,
217,
230,
254
nprod
defined in line
32; used 16 times
nstate
defined in line
21; used 30 times
- in /usr/source/yacc/source/y1.c line
162,
174-181(3)
- in /usr/source/yacc/source/y3.c line
75-76(2),
104(2),
118-129(8),
139-143(3),
150,
189-194(2),
203
- in /usr/source/yacc/source/y4.c line
10,
88,
175,
184,
196,
260-263(2)
nterms
defined in line
45; used 38 times
- in /usr/source/yacc/source/y1.c line
33,
160-164(2),
172,
276
- in /usr/source/yacc/source/y2.c line
202-216(10),
223-232(5),
241,
262,
393
- in /usr/source/yacc/source/y3.c line
206,
225-239(6)
- in /usr/source/yacc/source/y4.c line
14,
29,
113,
304,
310,
320,
369,
400
ntlim
defined in line
60; used 3 times
oflag
defined in line
98; used 4 times
peekc
defined in line
82; used 15 times
pempty
defined in line
64; used 10 times
prdptr
defined in line
33; used 19 times
pres
defined in line
62; used 10 times
pstate
defined in line
22; used 27 times
- in /usr/source/yacc/source/y1.c line
176
- in /usr/source/yacc/source/y3.c line
75-76(2),
93-94(2),
104(2),
118,
142-143(2),
150,
190-195(4),
214(2),
260-261(2)
- in /usr/source/yacc/source/y4.c line
264-265(2),
328-329(2),
347-348(2),
390-391(2)
rflag
defined in line
97; used 12 times
temp1
defined in line
54; used 39 times
- in /usr/source/yacc/source/y3.c line
206,
224-225(2),
231-239(6)
- in /usr/source/yacc/source/y4.c line
14-20(4),
31-36(6),
47,
54-59(2),
90-95(2),
230-231(2),
238-242(3),
254,
267,
305-311(4),
320(2),
370,
400
temp2
defined in line
55; used 2 times
tlim
defined in line
46; used 3 times
trmset
defined in line
49; used 23 times
tystate
defined in line
24; used 28 times
- in /usr/source/yacc/source/y3.c line
109,
128,
193,
204-205(2),
214(2)
- in /usr/source/yacc/source/y4.c line
11,
89-95(3),
176-184(4),
197-199(3),
260,
268-273(3),
354-355(2),
365,
380,
395-396(2)
wsets
defined in line
92; used 37 times
- in /usr/source/yacc/source/y3.c line
32-37(2),
54(3),
61,
210-212(3),
219-221(4),
262-264(3),
275-279(3),
289-290(3),
301,
313-315(4),
322-323(2),
329,
345-348(4)
- in /usr/source/yacc/source/y4.c line
16,
26-30(2)
Defined struct's
item
defined in line
17; used 2 times
sxxx1
defined in line
49;
never used
sxxx2
defined in line
59;
never used
wset
defined in line
92;
never used
Defined macros
_nprod
defined in line
5; used 2 times