1 #if defined(__STDC__) || defined(__cplusplus)
4 #define YYDEFUN(name, arglist, args) name(args)
10 #define YYDEFUN(name, arglist, args) name arglist args;
15 YYCONST
static char yysccsid
[] = "@(#)yaccpar 1.8 (Berkeley +Cygnus.28) 01/20/91";
18 #ifndef YYDONT_INCLUDE_STDIO
22 #include <stdlib.h> /* for malloc/realloc/free */
31 extern int non_empty_flag
;
32 char *strsave(const char *);
34 void yyerror(const char *);
69 #define QUOTED_TEXT 281
103 #define YYERRCODE 256
104 static YYCONST
short yylhs
[] = { -1,
105 0, 0, 6, 6, 1, 1, 1, 2, 2, 2,
106 2, 2, 3, 3, 3, 3, 4, 4, 7, 7,
107 7, 5, 5, 5, 5, 5, 5, 5, 5, 5,
108 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
109 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
110 5, 5, 5, 5, 8, 11, 11, 12, 12, 13,
111 13, 16, 16, 15, 15, 14, 14, 14, 14, 9,
114 static YYCONST
short yylen
[] = { 2,
115 0, 1, 1, 2, 1, 2, 2, 1, 3, 3,
116 5, 5, 1, 2, 3, 3, 1, 3, 1, 3,
117 5, 1, 1, 2, 2, 1, 1, 1, 3, 2,
118 2, 2, 2, 4, 5, 3, 2, 2, 2, 3,
119 3, 2, 2, 2, 2, 3, 3, 3, 3, 3,
120 3, 3, 2, 3, 1, 1, 3, 3, 4, 1,
121 2, 1, 3, 3, 4, 2, 2, 2, 2, 1,
124 static YYCONST
short yydefred
[] = { 0,
125 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
126 0, 0, 22, 23, 0, 0, 0, 0, 0, 0,
127 0, 0, 0, 0, 0, 0, 26, 27, 28, 0,
128 0, 3, 5, 0, 13, 0, 0, 17, 14, 70,
129 71, 0, 0, 55, 31, 32, 33, 30, 73, 74,
130 72, 0, 0, 0, 0, 0, 0, 0, 0, 0,
131 0, 0, 0, 6, 7, 0, 0, 24, 25, 0,
132 0, 0, 0, 0, 0, 0, 0, 0, 37, 38,
133 39, 0, 4, 0, 0, 0, 0, 0, 0, 0,
134 0, 0, 0, 0, 0, 0, 0, 0, 60, 0,
135 0, 29, 15, 16, 9, 0, 0, 20, 18, 40,
136 41, 0, 58, 0, 0, 0, 0, 66, 67, 68,
137 69, 34, 61, 0, 0, 0, 0, 59, 35, 0,
138 0, 0, 11, 12, 21, 0, 64, 0, 0, 65,
140 static YYCONST
short yydgoto
[] = { 31,
141 32, 33, 34, 35, 36, 84, 38, 43, 44, 52,
142 85, 45, 98, 99, 118, 131,
144 static YYCONST
short yysindex
[] = { 1488,
145 1527, -120, -120, -120, -120, -123, -249, -249, 1566, 1566,
146 1566, 1566, 0, 0, -249, -249, -249, -249, -115, 1488,
147 1488, -249, 1566, -256, -251, -249, 0, 0, 0, 1488,
148 0, 0, 0, -221, 0, -233, 1488, 0, 0, 0,
149 0, 1488, -85, 0, 0, 0, 0, 0, 0, 0,
150 0, 1488, 1566, 1566, -195, -195, -195, -195, 1566, 1566,
151 1566, 1566, -272, 0, 0, 1566, -195, 0, 0, 1566,
152 1402, 1527, 1527, 1527, 1527, 1566, 1566, 1566, 0, 0,
153 0, 1566, 0, 1488, -113, 1488, 1444, -195, -195, -195,
154 -195, -195, -195, -117, -117, -117, -117, -118, 0, -195,
155 -195, 0, 0, 0, 0, -167, -189, 0, 0, 0,
156 0, 1488, 0, -106, -123, 1488, -83, 0, 0, 0,
157 0, 0, 0, 1527, 1527, 1566, 1488, 0, 0, 1488,
158 -105, 1488, 0, 0, 0, 1488, 0, -104, 1488, 0,
160 static YYCONST
short yyrindex
[] = { 41,
161 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
162 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
163 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
164 0, 0, 0, 1, 0, 1220, 46, 0, 0, 0,
165 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
166 0, 0, 0, 0, 85, 128, 363, 406, 0, 0,
167 0, 0, 0, 0, 0, 0, 449, 0, 0, 0,
168 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
169 0, 0, 0, -103, 0, 0, 185, 492, 727, 770,
170 813, 856, 1091, 0, 0, 0, 0, 0, 0, 1134,
171 1177, 0, 0, 0, 0, 42, 1220, 0, 0, 0,
172 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
173 0, 0, 0, 0, 0, 0, -102, 0, 0, -101,
174 0, 0, 0, 0, 0, 0, 0, 0, -99, 0,
176 static YYCONST
short yygindex
[] = { 0,
177 -7, -69, 3, -66, 458, 9, -26, 52, 27, -63,
178 -32, 54, 0, -35, 2, -59,
180 #define YYTABLESIZE 1865
181 static YYCONST
short yytable
[] = { 49,
182 8, 50, 42, 39, 105, 116, 122, 63, 37, 8,
183 109, 113, 64, 65, 94, 95, 96, 97, 128, 137,
184 140, 56, 57, 62, 68, 63, 76, 77, 69, 83,
185 40, 41, 51, 53, 54, 72, 73, 86, 71, 132,
186 1, 10, 78, 79, 80, 2, 74, 75, 66, 108,
187 10, 129, 70, 114, 133, 134, 46, 47, 48, 135,
188 87, 81, 123, 83, 82, 0, 59, 60, 61, 62,
189 76, 126, 138, 0, 103, 104, 83, 106, 0, 83,
190 78, 79, 80, 0, 42, 0, 78, 79, 80, 72,
191 73, 0, 0, 42, 8, 0, 119, 120, 121, 81,
192 124, 125, 82, 0, 0, 81, 0, 0, 82, 0,
193 0, 0, 0, 0, 0, 0, 0, 0, 0, 83,
194 127, 0, 83, 8, 130, 8, 8, 43, 0, 0,
195 0, 83, 0, 0, 0, 10, 43, 0, 0, 0,
196 130, 51, 0, 0, 139, 117, 117, 117, 117, 0,
197 0, 0, 0, 0, 0, 0, 40, 41, 0, 40,
198 41, 0, 40, 41, 10, 112, 10, 10, 94, 95,
199 96, 97, 112, 136, 136, 56, 57, 62, 42, 63,
200 0, 0, 0, 0, 36, 0, 0, 0, 0, 0,
201 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
202 0, 0, 0, 0, 0, 0, 0, 42, 0, 42,
203 42, 0, 0, 0, 0, 0, 0, 0, 0, 0,
204 0, 43, 0, 0, 0, 0, 0, 0, 0, 0,
205 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
206 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
207 43, 0, 43, 43, 0, 0, 0, 0, 0, 8,
208 8, 8, 8, 8, 8, 8, 8, 8, 0, 0,
209 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
210 8, 8, 8, 8, 8, 8, 8, 0, 0, 0,
211 0, 8, 8, 8, 8, 8, 8, 8, 8, 8,
212 10, 10, 10, 10, 10, 10, 10, 10, 10, 36,
213 0, 10, 10, 10, 10, 10, 10, 10, 10, 10,
214 10, 10, 10, 10, 10, 10, 10, 10, 0, 0,
215 0, 0, 10, 10, 10, 10, 10, 10, 10, 10,
216 10, 42, 42, 42, 42, 42, 42, 42, 42, 42,
217 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
218 0, 0, 44, 42, 42, 42, 42, 42, 42, 42,
219 42, 44, 0, 0, 0, 42, 42, 42, 42, 0,
220 42, 42, 0, 42, 43, 43, 43, 43, 43, 43,
221 43, 43, 43, 43, 43, 43, 43, 43, 43, 43,
222 43, 43, 43, 0, 0, 45, 43, 43, 43, 43,
223 43, 43, 43, 43, 45, 0, 0, 0, 43, 43,
224 43, 43, 0, 43, 43, 0, 43, 0, 0, 0,
225 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
226 0, 36, 36, 0, 36, 36, 0, 0, 53, 0,
227 0, 0, 36, 36, 0, 0, 44, 53, 0, 0,
228 36, 36, 36, 36, 0, 0, 55, 56, 57, 58,
229 0, 0, 0, 0, 0, 0, 0, 0, 0, 36,
230 67, 0, 36, 0, 0, 44, 0, 44, 44, 0,
231 0, 47, 0, 0, 0, 0, 0, 0, 0, 45,
232 47, 0, 0, 0, 0, 0, 0, 0, 0, 0,
233 88, 89, 0, 0, 0, 0, 90, 91, 92, 93,
234 0, 0, 0, 100, 0, 0, 0, 101, 45, 0,
235 45, 45, 0, 107, 0, 110, 0, 0, 0, 111,
236 0, 0, 53, 0, 0, 0, 0, 0, 0, 0,
237 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
238 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
239 0, 53, 0, 53, 53, 0, 0, 0, 0, 0,
240 0, 0, 0, 0, 0, 47, 0, 0, 0, 0,
241 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
242 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
243 0, 0, 0, 0, 47, 0, 47, 47, 0, 44,
244 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
245 44, 44, 44, 44, 44, 44, 44, 44, 0, 0,
246 0, 44, 44, 44, 44, 44, 44, 44, 44, 0,
247 0, 0, 0, 44, 44, 44, 44, 0, 44, 44,
248 0, 44, 45, 45, 45, 45, 45, 45, 45, 45,
249 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
250 45, 0, 0, 0, 45, 45, 45, 45, 45, 45,
251 45, 45, 0, 0, 0, 0, 45, 45, 45, 45,
252 0, 45, 45, 0, 45, 53, 53, 53, 53, 53,
253 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
254 53, 53, 53, 53, 0, 0, 46, 53, 53, 53,
255 53, 53, 53, 53, 53, 46, 0, 0, 0, 53,
256 53, 53, 53, 0, 53, 53, 0, 53, 47, 47,
257 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
258 47, 47, 47, 47, 47, 47, 47, 0, 0, 48,
259 47, 47, 47, 47, 47, 47, 47, 47, 48, 0,
260 0, 0, 47, 47, 47, 47, 0, 47, 47, 0,
261 47, 0, 0, 0, 0, 0, 0, 0, 0, 0,
262 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
263 0, 0, 49, 0, 0, 0, 0, 0, 0, 0,
264 46, 49, 0, 0, 0, 0, 0, 0, 0, 0,
265 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
266 0, 0, 0, 0, 0, 0, 0, 0, 0, 46,
267 0, 46, 46, 0, 0, 51, 0, 0, 0, 0,
268 0, 0, 0, 48, 51, 0, 0, 0, 0, 0,
269 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
270 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
271 0, 0, 48, 0, 48, 48, 0, 0, 0, 0,
272 0, 0, 0, 0, 0, 0, 49, 0, 0, 0,
273 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
274 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
275 0, 0, 0, 0, 0, 49, 0, 49, 49, 0,
276 0, 0, 0, 0, 0, 0, 0, 0, 0, 51,
277 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
278 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
279 0, 0, 0, 0, 0, 0, 0, 0, 51, 0,
280 51, 51, 0, 46, 46, 46, 46, 46, 46, 46,
281 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
282 46, 46, 0, 0, 0, 46, 46, 46, 46, 46,
283 46, 46, 46, 0, 0, 0, 0, 46, 46, 46,
284 46, 0, 46, 46, 0, 46, 48, 48, 48, 48,
285 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
286 48, 48, 48, 48, 48, 0, 0, 0, 48, 48,
287 48, 48, 48, 48, 48, 48, 0, 0, 0, 0,
288 48, 48, 48, 48, 0, 48, 48, 0, 48, 49,
289 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
290 49, 49, 49, 49, 49, 49, 49, 49, 0, 0,
291 50, 49, 49, 49, 49, 49, 49, 49, 49, 50,
292 0, 0, 0, 49, 49, 49, 49, 0, 49, 49,
293 0, 49, 51, 51, 51, 51, 51, 51, 51, 51,
294 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
295 51, 0, 0, 52, 51, 51, 51, 51, 51, 51,
296 51, 51, 52, 0, 0, 0, 51, 51, 51, 51,
297 0, 51, 51, 0, 51, 0, 0, 0, 0, 0,
298 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
299 0, 0, 0, 0, 0, 0, 54, 0, 0, 0,
300 0, 0, 0, 0, 50, 54, 0, 0, 0, 0,
301 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
302 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
303 0, 0, 0, 50, 0, 50, 50, 0, 0, 19,
304 0, 0, 0, 0, 0, 0, 0, 52, 19, 0,
305 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
307 0, 0, 0, 0, 0, 0, 52, 0, 52, 52,
308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
309 54, 0, 0, 0, 0, 0, 0, 0, 0, 0,
310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
311 0, 0, 0, 0, 0, 0, 0, 0, 0, 54,
312 0, 54, 54, 0, 0, 0, 0, 0, 0, 0,
313 0, 0, 0, 19, 0, 0, 0, 0, 0, 0,
314 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
315 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
316 0, 0, 19, 0, 19, 19, 0, 50, 50, 50,
317 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
318 50, 50, 50, 50, 50, 50, 0, 0, 0, 50,
319 50, 50, 50, 50, 50, 50, 50, 0, 0, 0,
320 0, 50, 50, 50, 50, 0, 50, 50, 0, 50,
321 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
322 52, 52, 52, 52, 52, 52, 52, 52, 52, 0,
323 29, 0, 52, 52, 52, 52, 52, 52, 52, 52,
324 0, 0, 0, 0, 52, 52, 52, 52, 0, 52,
325 52, 0, 52, 54, 54, 54, 54, 54, 54, 54,
326 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
327 54, 54, 29, 0, 0, 54, 54, 54, 54, 54,
328 54, 54, 54, 0, 0, 0, 0, 54, 54, 54,
329 54, 0, 54, 54, 0, 54, 19, 19, 19, 0,
330 0, 19, 19, 19, 19, 19, 19, 19, 19, 19,
331 19, 19, 19, 19, 19, 27, 29, 0, 19, 19,
332 19, 19, 19, 19, 19, 19, 0, 0, 0, 0,
333 19, 19, 19, 19, 0, 19, 19, 0, 19, 0,
334 0, 0, 0, 0, 30, 0, 102, 28, 0, 0,
335 0, 0, 0, 0, 0, 29, 0, 27, 0, 0,
336 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
338 0, 0, 0, 0, 0, 0, 30, 0, 0, 28,
339 0, 0, 0, 0, 29, 0, 0, 0, 0, 0,
340 0, 27, 0, 0, 0, 0, 0, 0, 0, 0,
341 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
343 30, 0, 0, 28, 0, 0, 0, 0, 0, 0,
344 27, 0, 0, 0, 0, 0, 0, 0, 0, 0,
345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
346 0, 0, 0, 0, 0, 0, 0, 0, 0, 30,
347 0, 0, 28, 0, 0, 0, 0, 0, 0, 27,
348 1, 0, 0, 2, 3, 4, 5, 6, 0, 0,
349 0, 7, 8, 9, 10, 11, 12, 0, 0, 0,
350 0, 13, 14, 15, 16, 17, 18, 19, 30, 0,
351 0, 28, 20, 21, 22, 23, 0, 24, 25, 0,
352 26, 0, 1, 0, 0, 2, 3, 4, 5, 6,
353 115, 0, 0, 7, 8, 9, 10, 11, 12, 0,
354 0, 0, 0, 13, 14, 15, 16, 17, 18, 19,
355 0, 0, 0, 0, 20, 21, 22, 23, 0, 24,
356 25, 0, 26, 0, 0, 0, 1, 0, 0, 2,
357 3, 4, 5, 6, 0, 0, 0, 7, 8, 9,
358 10, 11, 12, 0, 0, 0, 0, 13, 14, 15,
359 16, 17, 18, 19, 0, 0, 0, 0, 20, 21,
360 22, 23, 0, 24, 25, 1, 26, 0, 2, 3,
361 4, 5, 6, 0, 0, 0, 7, 8, 9, 10,
362 11, 12, 0, 0, 0, 0, 13, 14, 15, 16,
363 17, 18, 19, 0, 0, 0, 0, 0, 0, 22,
364 23, 0, 24, 25, 0, 26, 0, 2, 3, 4,
365 5, 6, 0, 0, 0, 7, 8, 9, 10, 11,
366 12, 0, 0, 0, 0, 13, 14, 15, 16, 17,
367 18, 19, 0, 0, 0, 0, 0, 0, 22, 23,
370 static YYCONST
short yycheck
[] = { 123,
371 0, 125, 123, 1, 74, 123, 125, 123, 0, 9,
372 77, 125, 20, 21, 287, 288, 289, 290, 125, 125,
373 125, 125, 125, 125, 281, 125, 260, 261, 280, 37,
374 280, 281, 6, 7, 8, 257, 258, 123, 30, 123,
375 0, 0, 276, 277, 278, 0, 268, 269, 22, 76,
376 9, 115, 26, 86, 124, 125, 3, 4, 5, 126,
377 52, 295, 98, 71, 298, -1, 15, 16, 17, 18,
378 260, 261, 132, -1, 72, 73, 84, 75, -1, 87,
379 276, 277, 278, -1, 0, -1, 276, 277, 278, 257,
380 258, -1, -1, 9, 94, -1, 95, 96, 97, 295,
381 268, 269, 298, -1, -1, 295, -1, -1, 298, -1,
382 -1, -1, -1, -1, -1, -1, -1, -1, -1, 127,
383 112, -1, 130, 123, 116, 125, 126, 0, -1, -1,
384 -1, 139, -1, -1, -1, 94, 9, -1, -1, -1,
385 132, 115, -1, -1, 136, 94, 95, 96, 97, -1,
386 -1, -1, -1, -1, -1, -1, 280, 281, -1, 280,
387 281, -1, 280, 281, 123, 279, 125, 126, 287, 288,
388 289, 290, 279, 279, 279, 279, 279, 279, 94, 279,
389 -1, -1, -1, -1, 0, -1, -1, -1, -1, -1,
390 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
391 -1, -1, -1, -1, -1, -1, -1, 123, -1, 125,
392 126, -1, -1, -1, -1, -1, -1, -1, -1, -1,
393 -1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
394 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
395 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
396 123, -1, 125, 126, -1, -1, -1, -1, -1, 259,
397 260, 261, 262, 263, 264, 265, 266, 267, -1, -1,
398 270, 271, 272, 273, 274, 275, 276, 277, 278, 279,
399 280, 281, 282, 283, 284, 285, 286, -1, -1, -1,
400 -1, 291, 292, 293, 294, 295, 296, 297, 298, 299,
401 259, 260, 261, 262, 263, 264, 265, 266, 267, 125,
402 -1, 270, 271, 272, 273, 274, 275, 276, 277, 278,
403 279, 280, 281, 282, 283, 284, 285, 286, -1, -1,
404 -1, -1, 291, 292, 293, 294, 295, 296, 297, 298,
405 299, 257, 258, 259, 260, 261, 262, 263, 264, 265,
406 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
407 -1, -1, 0, 279, 280, 281, 282, 283, 284, 285,
408 286, 9, -1, -1, -1, 291, 292, 293, 294, -1,
409 296, 297, -1, 299, 257, 258, 259, 260, 261, 262,
410 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
411 273, 274, 275, -1, -1, 0, 279, 280, 281, 282,
412 283, 284, 285, 286, 9, -1, -1, -1, 291, 292,
413 293, 294, -1, 296, 297, -1, 299, -1, -1, -1,
414 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
415 -1, 257, 258, -1, 260, 261, -1, -1, 0, -1,
416 -1, -1, 268, 269, -1, -1, 94, 9, -1, -1,
417 276, 277, 278, 279, -1, -1, 9, 10, 11, 12,
418 -1, -1, -1, -1, -1, -1, -1, -1, -1, 295,
419 23, -1, 298, -1, -1, 123, -1, 125, 126, -1,
420 -1, 0, -1, -1, -1, -1, -1, -1, -1, 94,
421 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
422 53, 54, -1, -1, -1, -1, 59, 60, 61, 62,
423 -1, -1, -1, 66, -1, -1, -1, 70, 123, -1,
424 125, 126, -1, 76, -1, 78, -1, -1, -1, 82,
425 -1, -1, 94, -1, -1, -1, -1, -1, -1, -1,
426 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
427 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
428 -1, 123, -1, 125, 126, -1, -1, -1, -1, -1,
429 -1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
430 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
431 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
432 -1, -1, -1, -1, 123, -1, 125, 126, -1, 257,
433 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
434 268, 269, 270, 271, 272, 273, 274, 275, -1, -1,
435 -1, 279, 280, 281, 282, 283, 284, 285, 286, -1,
436 -1, -1, -1, 291, 292, 293, 294, -1, 296, 297,
437 -1, 299, 257, 258, 259, 260, 261, 262, 263, 264,
438 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
439 275, -1, -1, -1, 279, 280, 281, 282, 283, 284,
440 285, 286, -1, -1, -1, -1, 291, 292, 293, 294,
441 -1, 296, 297, -1, 299, 257, 258, 259, 260, 261,
442 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
443 272, 273, 274, 275, -1, -1, 0, 279, 280, 281,
444 282, 283, 284, 285, 286, 9, -1, -1, -1, 291,
445 292, 293, 294, -1, 296, 297, -1, 299, 257, 258,
446 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
447 269, 270, 271, 272, 273, 274, 275, -1, -1, 0,
448 279, 280, 281, 282, 283, 284, 285, 286, 9, -1,
449 -1, -1, 291, 292, 293, 294, -1, 296, 297, -1,
450 299, -1, -1, -1, -1, -1, -1, -1, -1, -1,
451 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
452 -1, -1, 0, -1, -1, -1, -1, -1, -1, -1,
453 94, 9, -1, -1, -1, -1, -1, -1, -1, -1,
454 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
455 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
456 -1, 125, 126, -1, -1, 0, -1, -1, -1, -1,
457 -1, -1, -1, 94, 9, -1, -1, -1, -1, -1,
458 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
459 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
460 -1, -1, 123, -1, 125, 126, -1, -1, -1, -1,
461 -1, -1, -1, -1, -1, -1, 94, -1, -1, -1,
462 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
463 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
464 -1, -1, -1, -1, -1, 123, -1, 125, 126, -1,
465 -1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
466 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
467 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
468 -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
469 125, 126, -1, 257, 258, 259, 260, 261, 262, 263,
470 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
471 274, 275, -1, -1, -1, 279, 280, 281, 282, 283,
472 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
473 294, -1, 296, 297, -1, 299, 257, 258, 259, 260,
474 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
475 271, 272, 273, 274, 275, -1, -1, -1, 279, 280,
476 281, 282, 283, 284, 285, 286, -1, -1, -1, -1,
477 291, 292, 293, 294, -1, 296, 297, -1, 299, 257,
478 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
479 268, 269, 270, 271, 272, 273, 274, 275, -1, -1,
480 0, 279, 280, 281, 282, 283, 284, 285, 286, 9,
481 -1, -1, -1, 291, 292, 293, 294, -1, 296, 297,
482 -1, 299, 257, 258, 259, 260, 261, 262, 263, 264,
483 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
484 275, -1, -1, 0, 279, 280, 281, 282, 283, 284,
485 285, 286, 9, -1, -1, -1, 291, 292, 293, 294,
486 -1, 296, 297, -1, 299, -1, -1, -1, -1, -1,
487 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
488 -1, -1, -1, -1, -1, -1, 0, -1, -1, -1,
489 -1, -1, -1, -1, 94, 9, -1, -1, -1, -1,
490 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
491 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
492 -1, -1, -1, 123, -1, 125, 126, -1, -1, 0,
493 -1, -1, -1, -1, -1, -1, -1, 94, 9, -1,
494 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
495 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
496 -1, -1, -1, -1, -1, -1, 123, -1, 125, 126,
497 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
498 94, -1, -1, -1, -1, -1, -1, -1, -1, -1,
499 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
500 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
501 -1, 125, 126, -1, -1, -1, -1, -1, -1, -1,
502 -1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
503 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
504 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
505 -1, -1, 123, -1, 125, 126, -1, 257, 258, 259,
506 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
507 270, 271, 272, 273, 274, 275, -1, -1, -1, 279,
508 280, 281, 282, 283, 284, 285, 286, -1, -1, -1,
509 -1, 291, 292, 293, 294, -1, 296, 297, -1, 299,
510 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
511 267, 268, 269, 270, 271, 272, 273, 274, 275, -1,
512 9, -1, 279, 280, 281, 282, 283, 284, 285, 286,
513 -1, -1, -1, -1, 291, 292, 293, 294, -1, 296,
514 297, -1, 299, 257, 258, 259, 260, 261, 262, 263,
515 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
516 274, 275, 9, -1, -1, 279, 280, 281, 282, 283,
517 284, 285, 286, -1, -1, -1, -1, 291, 292, 293,
518 294, -1, 296, 297, -1, 299, 257, 258, 259, -1,
519 -1, 262, 263, 264, 265, 266, 267, 268, 269, 270,
520 271, 272, 273, 274, 275, 94, 9, -1, 279, 280,
521 281, 282, 283, 284, 285, 286, -1, -1, -1, -1,
522 291, 292, 293, 294, -1, 296, 297, -1, 299, -1,
523 -1, -1, -1, -1, 123, -1, 125, 126, -1, -1,
524 -1, -1, -1, -1, -1, 9, -1, 94, -1, -1,
525 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
526 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
527 -1, -1, -1, -1, -1, -1, 123, -1, -1, 126,
528 -1, -1, -1, -1, 9, -1, -1, -1, -1, -1,
529 -1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
530 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
531 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
532 123, -1, -1, 126, -1, -1, -1, -1, -1, -1,
533 94, -1, -1, -1, -1, -1, -1, -1, -1, -1,
534 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
535 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
536 -1, -1, 126, -1, -1, -1, -1, -1, -1, 94,
537 259, -1, -1, 262, 263, 264, 265, 266, -1, -1,
538 -1, 270, 271, 272, 273, 274, 275, -1, -1, -1,
539 -1, 280, 281, 282, 283, 284, 285, 286, 123, -1,
540 -1, 126, 291, 292, 293, 294, -1, 296, 297, -1,
541 299, -1, 259, -1, -1, 262, 263, 264, 265, 266,
542 267, -1, -1, 270, 271, 272, 273, 274, 275, -1,
543 -1, -1, -1, 280, 281, 282, 283, 284, 285, 286,
544 -1, -1, -1, -1, 291, 292, 293, 294, -1, 296,
545 297, -1, 299, -1, -1, -1, 259, -1, -1, 262,
546 263, 264, 265, 266, -1, -1, -1, 270, 271, 272,
547 273, 274, 275, -1, -1, -1, -1, 280, 281, 282,
548 283, 284, 285, 286, -1, -1, -1, -1, 291, 292,
549 293, 294, -1, 296, 297, 259, 299, -1, 262, 263,
550 264, 265, 266, -1, -1, -1, 270, 271, 272, 273,
551 274, 275, -1, -1, -1, -1, 280, 281, 282, 283,
552 284, 285, 286, -1, -1, -1, -1, -1, -1, 293,
553 294, -1, 296, 297, -1, 299, -1, 262, 263, 264,
554 265, 266, -1, -1, -1, 270, 271, 272, 273, 274,
555 275, -1, -1, -1, -1, 280, 281, 282, 283, 284,
556 285, 286, -1, -1, -1, -1, -1, -1, 293, 294,
557 -1, 296, 297, -1, 299,
563 #define YYMAXTOKEN 314
565 static YYCONST
char *YYCONST yyname
[] = {
566 "end-of-file",0,0,0,0,0,0,0,0,"'\\t'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
567 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
568 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"'^'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,
569 0,0,0,0,0,0,0,0,0,0,0,0,0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
570 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
571 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
572 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"OVER",
573 "SMALLOVER","SQRT","SUB","SUP","LPILE","RPILE","CPILE","PILE","LEFT","RIGHT",
574 "TO","FROM","SIZE","FONT","ROMAN","BOLD","ITALIC","FAT","ACCENT","BAR","UNDER",
575 "ABOVE","TEXT","QUOTED_TEXT","FWD","BACK","DOWN","UP","MATRIX","COL","LCOL",
576 "RCOL","CCOL","MARK","LINEUP","TYPE","VCENTER","PRIME","SPLIT","NOSPLIT",
577 "UACCENT","SPECIAL","SPACE","GFONT","GSIZE","DEFINE","NDEFINE","TDEFINE",
578 "SDEFINE","UNDEF","IFDEF","INCLUDE","DELIM","CHARTYPE","SET","GRFONT","GBFONT",
580 static YYCONST
char *YYCONST yyrule
[] = {
585 "equation : equation mark",
588 "mark : LINEUP mark",
589 "from_to : sqrt_over",
590 "from_to : sqrt_over TO from_to",
591 "from_to : sqrt_over FROM sqrt_over",
592 "from_to : sqrt_over FROM sqrt_over TO from_to",
593 "from_to : sqrt_over FROM sqrt_over FROM from_to",
594 "sqrt_over : script",
595 "sqrt_over : SQRT sqrt_over",
596 "sqrt_over : sqrt_over OVER sqrt_over",
597 "sqrt_over : sqrt_over SMALLOVER sqrt_over",
599 "script : simple SUP script",
601 "nonsup : simple SUB nonsup",
602 "nonsup : simple SUB simple SUP script",
604 "simple : QUOTED_TEXT",
605 "simple : SPLIT QUOTED_TEXT",
606 "simple : NOSPLIT TEXT",
610 "simple : '{' equation '}'",
611 "simple : PILE pile_arg",
612 "simple : LPILE pile_arg",
613 "simple : RPILE pile_arg",
614 "simple : CPILE pile_arg",
615 "simple : MATRIX '{' column_list '}'",
616 "simple : LEFT delim equation RIGHT delim",
617 "simple : LEFT delim equation",
618 "simple : simple BAR",
619 "simple : simple UNDER",
620 "simple : simple PRIME",
621 "simple : simple ACCENT simple",
622 "simple : simple UACCENT simple",
623 "simple : ROMAN simple",
624 "simple : BOLD simple",
625 "simple : ITALIC simple",
626 "simple : FAT simple",
627 "simple : FONT text simple",
628 "simple : SIZE text simple",
629 "simple : FWD number simple",
630 "simple : BACK number simple",
631 "simple : UP number simple",
632 "simple : DOWN number simple",
633 "simple : TYPE text simple",
634 "simple : VCENTER simple",
635 "simple : SPECIAL text simple",
637 "pile_element_list : equation",
638 "pile_element_list : pile_element_list ABOVE equation",
639 "pile_arg : '{' pile_element_list '}'",
640 "pile_arg : number '{' pile_element_list '}'",
641 "column_list : column",
642 "column_list : column_list column",
643 "column_element_list : equation",
644 "column_element_list : column_element_list ABOVE equation",
645 "column_arg : '{' column_element_list '}'",
646 "column_arg : number '{' column_element_list '}'",
647 "column : COL column_arg",
648 "column : LCOL column_arg",
649 "column : RCOL column_arg",
650 "column : CCOL column_arg",
652 "text : QUOTED_TEXT",
658 #define YYLEX yylex()
660 #define yyclearin (yychar=(YYEMPTY))
661 #define yyerrok (yyerrflag=0)
663 #define YYINITDEPTH 200
667 #define YYMAXDEPTH YYSTACKSIZE
670 #define YYSTACKSIZE YYMAXDEPTH
672 #define YYSTACKSIZE 10000
673 #define YYMAXDEPTH 10000
683 static YYSTYPE
*yyvs
;
684 static int yystacksize
;
685 static int yygrow ();
686 static YYPTR yymalloc
YYPARAMS((unsigned));
687 static YYPTR yyrealloc
YYPARAMS((YYPTR
, unsigned));
688 #define yyfree(x) free(x)
689 #define YYABORT goto yyabort
690 #define YYACCEPT goto yyaccept
691 #define YYERROR goto yyerrlab
695 extern "C" char *getenv();
697 extern char *getenv();
704 register int yym
, yyn
, yystate
;
705 register YYSTYPE
*yyvsp
;
706 register short *yyssp
;
709 register YYCONST
char *yys
;
711 if (yys
= getenv("YYDEBUG"))
714 if (yyn
>= '0' && yyn
<= '9')
725 yyss
= (short *) yymalloc (YYINITDEPTH
* sizeof (short));
728 yyvs
= (YYSTYPE
*) yymalloc (YYINITDEPTH
* sizeof (YYSTYPE
));
734 yystacksize
= YYINITDEPTH
;
736 yysse
= yyss
+ yystacksize
- 1;
739 *yyssp
= yystate
= 0;
742 if (yyn
= yydefred
[yystate
]) goto yyreduce
;
745 if ((yychar
= yylex()) < 0) yychar
= 0;
750 if (yychar
<= YYMAXTOKEN
) yys
= yyname
[yychar
];
751 if (!yys
) yys
= "illegal-symbol";
752 printf("yydebug: state %d, reading %d (%s)\n", yystate
,
757 if ((yyn
= yysindex
[yystate
]) && (yyn
+= yychar
) >= 0 &&
758 yyn
<= YYTABLESIZE
&& yycheck
[yyn
] == yychar
)
762 printf("yydebug: state %d, shifting to state %d\n",
763 yystate
, yytable
[yyn
]);
767 /* FIXME: Rework so there's only one of these. */
768 int depth
= yyssp
- yyss
;
771 yysse
= yyss
+ yystacksize
- 1;
772 yyssp
= yyss
+ depth
;
773 yyvsp
= yyvs
+ depth
;
775 *++yyssp
= yystate
= yytable
[yyn
];
778 if (yyerrflag
> 0) --yyerrflag
;
781 if ((yyn
= yyrindex
[yystate
]) && (yyn
+= yychar
) >= 0 &&
782 yyn
<= YYTABLESIZE
&& yycheck
[yyn
] == yychar
)
787 if (yyerrflag
) goto yyinrecovery
;
792 yyerror("syntax error");
804 if ((yyn
= yysindex
[*yyssp
]) && (yyn
+= YYERRCODE
) >= 0 &&
805 yyn
<= YYTABLESIZE
&& yycheck
[yyn
] == YYERRCODE
)
809 printf("yydebug: state %d, error recovery shifting\
810 to state %d\n", *yyssp
, yytable
[yyn
]);
814 int depth
= yyssp
- yyss
;
817 yysse
= yyss
+ yystacksize
- 1;
818 yyssp
= yyss
+ depth
;
819 yyvsp
= yyvs
+ depth
;
821 *++yyssp
= yystate
= yytable
[yyn
];
829 printf("yydebug: error recovery discarding state %d\n",
832 if (yyssp
<= yyss
) goto yyabort
;
840 if (yychar
== 0) goto yyabort
;
845 if (yychar
<= YYMAXTOKEN
) yys
= yyname
[yychar
];
846 if (!yys
) yys
= "illegal-symbol";
847 printf("yydebug: state %d, error recovery discards token %d (%s)\n",
848 yystate
, yychar
, yys
);
857 printf("yydebug: state %d, reducing by rule %d (%s)\n",
858 yystate
, yyn
, yyrule
[yyn
]);
861 yyval
= yyvsp
[1-yym
];
866 { yyvsp
[0].b
->top_level(); non_empty_flag
= 1; }
870 { yyval
.b
= yyvsp
[0].b
; }
875 list_box
*lb
= yyvsp
[-1].b
->to_list_box();
877 lb
= new list_box(yyvsp
[-1].b
);
878 lb
->append(yyvsp
[0].b
);
884 { yyval
.b
= yyvsp
[0].b
; }
888 { yyval
.b
= make_mark_box(yyvsp
[0].b
); }
892 { yyval
.b
= make_lineup_box(yyvsp
[0].b
); }
896 { yyval
.b
= yyvsp
[0].b
; }
900 { yyval
.b
= make_limit_box(yyvsp
[-2].b
, 0, yyvsp
[0].b
); }
904 { yyval
.b
= make_limit_box(yyvsp
[-2].b
, yyvsp
[0].b
, 0); }
908 { yyval
.b
= make_limit_box(yyvsp
[-4].b
, yyvsp
[-2].b
, yyvsp
[0].b
); }
912 { yyval
.b
= make_limit_box(yyvsp
[-4].b
, make_limit_box(yyvsp
[-2].b
, yyvsp
[0].b
, 0), 0); }
916 { yyval
.b
= yyvsp
[0].b
; }
920 { yyval
.b
= make_sqrt_box(yyvsp
[0].b
); }
924 { yyval
.b
= make_over_box(yyvsp
[-2].b
, yyvsp
[0].b
); }
928 { yyval
.b
= make_small_over_box(yyvsp
[-2].b
, yyvsp
[0].b
); }
932 { yyval
.b
= yyvsp
[0].b
; }
936 { yyval
.b
= make_script_box(yyvsp
[-2].b
, 0, yyvsp
[0].b
); }
940 { yyval
.b
= yyvsp
[0].b
; }
944 { yyval
.b
= make_script_box(yyvsp
[-2].b
, yyvsp
[0].b
, 0); }
948 { yyval
.b
= make_script_box(yyvsp
[-4].b
, yyvsp
[-2].b
, yyvsp
[0].b
); }
952 { yyval
.b
= split_text(yyvsp
[0].str
); }
956 { yyval
.b
= new quoted_text_box(yyvsp
[0].str
); }
960 { yyval
.b
= split_text(yyvsp
[0].str
); }
964 { yyval
.b
= new quoted_text_box(yyvsp
[0].str
); }
968 { yyval
.b
= new half_space_box
; }
972 { yyval
.b
= new space_box
; }
976 { yyval
.b
= new tab_box
; }
980 { yyval
.b
= yyvsp
[-1].b
; }
984 { yyvsp
[0].pb
->set_alignment(CENTER_ALIGN
); yyval
.b
= yyvsp
[0].pb
; }
988 { yyvsp
[0].pb
->set_alignment(LEFT_ALIGN
); yyval
.b
= yyvsp
[0].pb
; }
992 { yyvsp
[0].pb
->set_alignment(RIGHT_ALIGN
); yyval
.b
= yyvsp
[0].pb
; }
996 { yyvsp
[0].pb
->set_alignment(CENTER_ALIGN
); yyval
.b
= yyvsp
[0].pb
; }
1000 { yyval
.b
= yyvsp
[-1].mb
; }
1004 { yyval
.b
= make_delim_box(yyvsp
[-3].str
, yyvsp
[-2].b
, yyvsp
[0].str
); }
1008 { yyval
.b
= make_delim_box(yyvsp
[-1].str
, yyvsp
[0].b
, 0); }
1012 { yyval
.b
= make_overline_box(yyvsp
[-1].b
); }
1016 { yyval
.b
= make_underline_box(yyvsp
[-1].b
); }
1020 { yyval
.b
= make_prime_box(yyvsp
[-1].b
); }
1024 { yyval
.b
= make_accent_box(yyvsp
[-2].b
, yyvsp
[0].b
); }
1028 { yyval
.b
= make_uaccent_box(yyvsp
[-2].b
, yyvsp
[0].b
); }
1032 { yyval
.b
= new font_box(strsave(get_grfont()), yyvsp
[0].b
); }
1036 { yyval
.b
= new font_box(strsave(get_gbfont()), yyvsp
[0].b
); }
1040 { yyval
.b
= new font_box(strsave(get_gfont()), yyvsp
[0].b
); }
1044 { yyval
.b
= new fat_box(yyvsp
[0].b
); }
1048 { yyval
.b
= new font_box(yyvsp
[-1].str
, yyvsp
[0].b
); }
1052 { yyval
.b
= new size_box(yyvsp
[-1].str
, yyvsp
[0].b
); }
1056 { yyval
.b
= new hmotion_box(yyvsp
[-1].n
, yyvsp
[0].b
); }
1060 { yyval
.b
= new hmotion_box(-yyvsp
[-1].n
, yyvsp
[0].b
); }
1064 { yyval
.b
= new vmotion_box(yyvsp
[-1].n
, yyvsp
[0].b
); }
1068 { yyval
.b
= new vmotion_box(-yyvsp
[-1].n
, yyvsp
[0].b
); }
1072 { yyvsp
[0].b
->set_spacing_type(yyvsp
[-1].str
); yyval
.b
= yyvsp
[0].b
; }
1076 { yyval
.b
= new vcenter_box(yyvsp
[0].b
); }
1080 { yyval
.b
= make_special_box(yyvsp
[-1].str
, yyvsp
[0].b
); }
1086 if (sscanf(yyvsp
[0].str
, "%d", &n
) == 1)
1088 a_delete yyvsp
[0].str
;
1093 { yyval
.pb
= new pile_box(yyvsp
[0].b
); }
1097 { yyvsp
[-2].pb
->append(yyvsp
[0].b
); yyval
.pb
= yyvsp
[-2].pb
; }
1101 { yyval
.pb
= yyvsp
[-1].pb
; }
1105 { yyvsp
[-1].pb
->set_space(yyvsp
[-3].n
); yyval
.pb
= yyvsp
[-1].pb
; }
1109 { yyval
.mb
= new matrix_box(yyvsp
[0].col
); }
1113 { yyvsp
[-1].mb
->append(yyvsp
[0].col
); yyval
.mb
= yyvsp
[-1].mb
; }
1117 { yyval
.col
= new column(yyvsp
[0].b
); }
1121 { yyvsp
[-2].col
->append(yyvsp
[0].b
); yyval
.col
= yyvsp
[-2].col
; }
1125 { yyval
.col
= yyvsp
[-1].col
; }
1129 { yyvsp
[-1].col
->set_space(yyvsp
[-3].n
); yyval
.col
= yyvsp
[-1].col
; }
1133 { yyvsp
[0].col
->set_alignment(CENTER_ALIGN
); yyval
.col
= yyvsp
[0].col
; }
1137 { yyvsp
[0].col
->set_alignment(LEFT_ALIGN
); yyval
.col
= yyvsp
[0].col
; }
1141 { yyvsp
[0].col
->set_alignment(RIGHT_ALIGN
); yyval
.col
= yyvsp
[0].col
; }
1145 { yyvsp
[0].col
->set_alignment(CENTER_ALIGN
); yyval
.col
= yyvsp
[0].col
; }
1149 { yyval
.str
= yyvsp
[0].str
; }
1153 { yyval
.str
= yyvsp
[0].str
; }
1157 { yyval
.str
= yyvsp
[0].str
; }
1161 { yyval
.str
= strsave("{"); }
1165 { yyval
.str
= strsave("}"); }
1167 #line 1168 "y.tab.c"
1173 if (yystate
== 0 && yym
== 0)
1177 printf("yydebug: after reduction, shifting from state 0 to\
1178 state %d\n", YYFINAL
);
1185 if ((yychar
= yylex()) < 0) yychar
= 0;
1190 if (yychar
<= YYMAXTOKEN
) yys
= yyname
[yychar
];
1191 if (!yys
) yys
= "illegal-symbol";
1192 printf("yydebug: state %d, reading %d (%s)\n",
1193 YYFINAL
, yychar
, yys
);
1197 if (yychar
== 0) goto yyaccept
;
1200 if ((yyn
= yygindex
[yym
]) && (yyn
+= yystate
) >= 0 &&
1201 yyn
<= YYTABLESIZE
&& yycheck
[yyn
] == yystate
)
1202 yystate
= yytable
[yyn
];
1204 yystate
= yydgoto
[yym
];
1207 printf("yydebug: after reduction, shifting from state %d \
1208 to state %d\n", *yyssp
, yystate
);
1212 int depth
= yyssp
- yyss
;
1215 yysse
= yyss
+ yystacksize
- 1;
1216 yyssp
= yyss
+ depth
;
1217 yyvsp
= yyvs
+ depth
;
1223 yyerror("yacc stack overflow");
1233 int old_stacksize
= yystacksize
;
1237 if (yystacksize
>= YYMAXDEPTH
)
1240 if (yystacksize
> YYMAXDEPTH
)
1241 yystacksize
= YYMAXDEPTH
;
1244 printf("yydebug: growing stack size from %d to %d\n",
1245 old_stacksize
, yystacksize
);
1247 new_yyss
= (short *) yyrealloc (yyss
, yystacksize
* sizeof (short));
1250 new_yyvs
= (YYSTYPE
*) yyrealloc (yyvs
, yystacksize
* sizeof (YYSTYPE
));
1262 YYDEFUN (yymalloc
, (bytes
), unsigned bytes
)
1264 YYPTR ptr
= (YYPTR
) malloc (bytes
);
1265 if (ptr
!= 0) return (ptr
);
1266 yyerror ("yyparse: memory exhausted");
1271 YYDEFUN (yyrealloc
, (old
, bytes
), YYPTR old YYAND
unsigned bytes
)
1273 YYPTR ptr
= (YYPTR
) realloc (old
, bytes
);
1274 if (ptr
!= 0) return (ptr
);
1275 yyerror ("yyparse: memory exhausted");