]> gcc.gnu.org Git - gcc.git/blame - gcc/cp/parse.c
decl.c: Lose arg_looking_for_template.
[gcc.git] / gcc / cp / parse.c
CommitLineData
861bb6c1 1
8eeda2ec
JM
2/* A Bison parser, made from parse.y
3 by GNU Bison version 1.25
861bb6c1
JL
4 */
5
6#define YYBISON 1 /* Identify Bison output. */
7
8#define IDENTIFIER 258
9#define TYPENAME 259
10#define SELFNAME 260
386b8a85
JM
11#define PFUNCNAME 261
12#define SCSPEC 262
13#define TYPESPEC 263
14#define CV_QUALIFIER 264
15#define CONSTANT 265
16#define STRING 266
17#define ELLIPSIS 267
18#define SIZEOF 268
19#define ENUM 269
20#define IF 270
21#define ELSE 271
22#define WHILE 272
23#define DO 273
24#define FOR 274
25#define SWITCH 275
26#define CASE 276
27#define DEFAULT 277
28#define BREAK 278
29#define CONTINUE 279
30#define RETURN 280
31#define GOTO 281
32#define ASM_KEYWORD 282
33#define GCC_ASM_KEYWORD 283
34#define TYPEOF 284
35#define ALIGNOF 285
36#define SIGOF 286
37#define ATTRIBUTE 287
38#define EXTENSION 288
39#define LABEL 289
40#define REALPART 290
41#define IMAGPART 291
42#define AGGR 292
43#define VISSPEC 293
44#define DELETE 294
45#define NEW 295
46#define THIS 296
47#define OPERATOR 297
48#define CXX_TRUE 298
49#define CXX_FALSE 299
50#define NAMESPACE 300
51#define TYPENAME_KEYWORD 301
52#define USING 302
53#define LEFT_RIGHT 303
54#define TEMPLATE 304
55#define TYPEID 305
56#define DYNAMIC_CAST 306
57#define STATIC_CAST 307
58#define REINTERPRET_CAST 308
59#define CONST_CAST 309
60#define SCOPE 310
61#define EMPTY 311
62#define PTYPENAME 312
63#define NSNAME 313
64#define THROW 314
65#define ASSIGN 315
66#define OROR 316
67#define ANDAND 317
68#define MIN_MAX 318
69#define EQCOMPARE 319
70#define ARITHCOMPARE 320
71#define LSHIFT 321
72#define RSHIFT 322
73#define POINTSAT_STAR 323
74#define DOT_STAR 324
75#define UNARY 325
76#define PLUSPLUS 326
77#define MINUSMINUS 327
78#define HYPERUNARY 328
79#define PAREN_STAR_PAREN 329
80#define POINTSAT 330
81#define TRY 331
82#define CATCH 332
83#define TYPENAME_ELLIPSIS 333
84#define PRE_PARSED_FUNCTION_DECL 334
85#define EXTERN_LANG_STRING 335
86#define ALL 336
87#define PRE_PARSED_CLASS_DECL 337
88#define DEFARG 338
89#define DEFARG_MARKER 339
90#define TYPENAME_DEFN 340
91#define IDENTIFIER_DEFN 341
92#define PTYPENAME_DEFN 342
93#define END_OF_LINE 343
94#define END_OF_SAVED_INPUT 344
861bb6c1
JL
95
96#line 29 "parse.y"
97
98/* Cause the `yydebug' variable to be defined. */
99#define YYDEBUG 1
100
101#include "config.h"
102
103#include <stdio.h>
104#include <errno.h>
105
106#include "tree.h"
107#include "input.h"
108#include "flags.h"
109#include "lex.h"
110#include "cp-tree.h"
111#include "output.h"
8eeda2ec 112#include "except.h"
861bb6c1
JL
113
114/* Since parsers are distinct for each language, put the language string
115 definition here. (fnf) */
116char *language_string = "GNU C++";
117
118extern tree void_list_node;
119extern struct obstack permanent_obstack;
120
121#ifndef errno
122extern int errno;
123#endif
124
125extern int end_of_file;
126extern int current_class_depth;
861bb6c1
JL
127
128/* FSF LOCAL dje prefix attributes */
129extern tree strip_attrs PROTO((tree));
130/* END FSF LOCAL */
131
861bb6c1
JL
132/* Like YYERROR but do call yyerror. */
133#define YYERROR1 { yyerror ("syntax error"); YYERROR; }
134
135#define OP0(NODE) (TREE_OPERAND (NODE, 0))
136#define OP1(NODE) (TREE_OPERAND (NODE, 1))
137
138/* Contains the statement keyword (if/while/do) to include in an
139 error message if the user supplies an empty conditional expression. */
140static char *cond_stmt_keyword;
141
8eeda2ec
JM
142static tree empty_parms PROTO((void));
143
861bb6c1
JL
144/* Nonzero if we have an `extern "C"' acting as an extern specifier. */
145int have_extern_spec;
146int used_extern_spec;
147
861bb6c1
JL
148/* Cons up an empty parameter list. */
149#ifdef __GNUC__
150__inline
151#endif
152static tree
153empty_parms ()
154{
155 tree parms;
156
157 if (strict_prototype
8eeda2ec 158 || current_class_type != NULL)
861bb6c1
JL
159 parms = void_list_node;
160 else
161 parms = NULL_TREE;
162 return parms;
163}
164
6a88a0c0 165
cf776105 166#line 101 "parse.y"
861bb6c1 167typedef union {long itype; tree ttype; char *strtype; enum tree_code code; flagged_type_tree ftype; } YYSTYPE;
cf776105 168#line 290 "parse.y"
861bb6c1
JL
169
170/* List of types and structure classes of the current declaration. */
171static tree current_declspecs = NULL_TREE;
172/* List of prefix attributes in effect.
173 Prefix attributes are parsed by the reserved_declspecs and declmods
174 rules. They create a list that contains *both* declspecs and attrs. */
175/* ??? It is not clear yet that all cases where an attribute can now appear in
176 a declspec list have been updated. */
177static tree prefix_attributes = NULL_TREE;
178
179/* When defining an aggregate, this is the most recent one being defined. */
180static tree current_aggr;
181
182/* Tell yyparse how to print a token's value, if yydebug is set. */
183
184#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
8eeda2ec 185extern void yyprint PROTO((FILE *, int, YYSTYPE));
861bb6c1 186extern tree combine_strings PROTO((tree));
861bb6c1
JL
187#include <stdio.h>
188
189#ifndef __cplusplus
190#ifndef __STDC__
191#define const
192#endif
193#endif
194
195
196
cf776105 197#define YYFINAL 1552
861bb6c1 198#define YYFLAG -32768
386b8a85 199#define YYNTBASE 114
861bb6c1 200
cf776105 201#define YYTRANSLATE(x) ((unsigned)(x) <= 344 ? yytranslate[x] : 389)
861bb6c1
JL
202
203static const char yytranslate[] = { 0,
204 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
205 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
206 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
386b8a85
JM
207 2, 2, 112, 2, 2, 2, 83, 71, 2, 94,
208 110, 81, 79, 60, 80, 93, 82, 2, 2, 2,
209 2, 2, 2, 2, 2, 2, 2, 63, 61, 75,
210 65, 76, 66, 2, 2, 2, 2, 2, 2, 2,
861bb6c1
JL
211 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
212 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
386b8a85 213 95, 2, 113, 70, 2, 2, 2, 2, 2, 2,
861bb6c1
JL
214 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
215 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
386b8a85 216 2, 2, 59, 69, 111, 89, 2, 2, 2, 2,
861bb6c1
JL
217 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
218 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
219 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
220 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
221 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
222 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
223 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
224 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
225 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
226 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
227 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
228 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
229 2, 2, 2, 2, 2, 1, 2, 3, 4, 5,
230 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
231 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
232 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
233 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
234 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
386b8a85
JM
235 56, 57, 58, 62, 64, 67, 68, 72, 73, 74,
236 77, 78, 84, 85, 86, 87, 88, 90, 91, 92,
861bb6c1 237 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
386b8a85 238 106, 107, 108, 109
861bb6c1
JL
239};
240
241#if YYDEBUG != 0
242static const short yyprhs[] = { 0,
243 0, 1, 3, 4, 7, 10, 12, 13, 14, 15,
244 17, 19, 21, 22, 25, 28, 30, 32, 38, 43,
245 49, 54, 55, 62, 63, 69, 75, 78, 83, 86,
246 89, 93, 97, 99, 101, 104, 107, 109, 112, 113,
73b0fce8
KL
247 119, 123, 125, 129, 131, 132, 135, 138, 142, 144,
248 148, 150, 154, 156, 160, 163, 166, 169, 173, 177,
249 180, 183, 186, 189, 192, 194, 196, 198, 199, 201,
250 204, 205, 207, 212, 216, 220, 221, 230, 236, 237,
251 247, 254, 255, 264, 270, 271, 281, 288, 291, 294,
252 296, 299, 301, 308, 313, 320, 325, 328, 330, 333,
253 336, 338, 341, 343, 346, 349, 352, 357, 360, 364,
254 365, 366, 368, 372, 375, 379, 381, 386, 389, 394,
255 397, 402, 405, 407, 409, 411, 413, 415, 417, 419,
256 421, 423, 425, 427, 428, 435, 436, 443, 444, 450,
257 451, 457, 458, 466, 467, 475, 476, 483, 484, 491,
258 492, 493, 498, 503, 505, 510, 512, 514, 515, 517,
cf776105
JM
259 519, 523, 525, 527, 529, 531, 533, 535, 537, 539,
260 541, 543, 547, 549, 553, 554, 556, 558, 559, 567,
261 569, 571, 575, 580, 584, 585, 589, 591, 595, 599,
262 603, 607, 609, 611, 613, 616, 619, 622, 625, 628,
263 631, 634, 639, 642, 647, 650, 654, 658, 663, 668,
264 674, 680, 687, 690, 695, 701, 704, 707, 711, 715,
265 719, 721, 725, 728, 732, 737, 739, 742, 748, 750,
266 754, 758, 762, 766, 770, 774, 778, 782, 786, 790,
267 794, 798, 802, 806, 810, 814, 818, 822, 826, 832,
268 836, 840, 842, 845, 849, 851, 853, 855, 857, 859,
269 860, 866, 872, 878, 884, 890, 892, 894, 896, 898,
270 901, 904, 908, 913, 918, 920, 922, 924, 928, 930,
271 932, 934, 936, 940, 944, 948, 949, 954, 959, 962,
272 967, 970, 973, 975, 980, 982, 990, 998, 1006, 1014,
273 1019, 1024, 1027, 1030, 1032, 1037, 1040, 1043, 1049, 1053,
274 1056, 1059, 1065, 1069, 1075, 1079, 1084, 1091, 1094, 1096,
275 1099, 1101, 1104, 1106, 1108, 1110, 1113, 1114, 1117, 1120,
276 1124, 1128, 1132, 1135, 1138, 1141, 1143, 1145, 1147, 1150,
277 1153, 1156, 1159, 1161, 1163, 1165, 1167, 1170, 1173, 1177,
278 1181, 1185, 1190, 1192, 1195, 1198, 1201, 1203, 1205, 1207,
279 1210, 1213, 1216, 1218, 1220, 1223, 1226, 1230, 1232, 1235,
280 1237, 1239, 1241, 1246, 1251, 1256, 1261, 1263, 1265, 1267,
281 1269, 1273, 1275, 1279, 1281, 1285, 1286, 1291, 1292, 1299,
282 1303, 1304, 1311, 1315, 1316, 1323, 1327, 1328, 1335, 1339,
283 1340, 1342, 1344, 1347, 1354, 1356, 1360, 1361, 1363, 1368,
284 1375, 1380, 1382, 1384, 1386, 1388, 1390, 1394, 1395, 1398,
285 1400, 1403, 1407, 1412, 1414, 1416, 1420, 1425, 1432, 1436,
286 1442, 1444, 1449, 1453, 1457, 1458, 1462, 1466, 1470, 1471,
287 1474, 1477, 1478, 1486, 1491, 1492, 1499, 1503, 1506, 1509,
288 1512, 1513, 1514, 1524, 1526, 1527, 1529, 1530, 1532, 1534,
289 1537, 1540, 1543, 1546, 1549, 1552, 1556, 1561, 1565, 1568,
290 1572, 1573, 1575, 1579, 1582, 1585, 1587, 1589, 1590, 1593,
291 1597, 1599, 1604, 1606, 1610, 1612, 1614, 1619, 1624, 1627,
292 1630, 1634, 1638, 1640, 1641, 1643, 1646, 1651, 1655, 1657,
293 1660, 1663, 1666, 1669, 1672, 1675, 1678, 1680, 1683, 1686,
294 1689, 1694, 1699, 1702, 1704, 1710, 1715, 1717, 1720, 1721,
295 1723, 1727, 1728, 1730, 1734, 1736, 1738, 1740, 1742, 1747,
296 1752, 1757, 1762, 1767, 1771, 1776, 1781, 1786, 1791, 1795,
297 1797, 1801, 1803, 1807, 1810, 1812, 1819, 1820, 1823, 1825,
298 1828, 1829, 1832, 1837, 1842, 1845, 1850, 1854, 1858, 1861,
299 1864, 1868, 1870, 1872, 1875, 1877, 1879, 1882, 1885, 1890,
300 1895, 1899, 1903, 1906, 1908, 1912, 1916, 1919, 1922, 1926,
301 1928, 1932, 1936, 1939, 1942, 1946, 1948, 1953, 1957, 1962,
302 1966, 1968, 1971, 1974, 1977, 1980, 1983, 1985, 1988, 1993,
303 1998, 2001, 2003, 2005, 2007, 2009, 2012, 2015, 2018, 2021,
304 2024, 2026, 2029, 2032, 2034, 2037, 2040, 2043, 2046, 2049,
305 2052, 2055, 2058, 2060, 2063, 2066, 2070, 2072, 2076, 2079,
306 2083, 2086, 2089, 2093, 2095, 2099, 2104, 2108, 2111, 2114,
307 2116, 2120, 2123, 2126, 2128, 2131, 2135, 2137, 2141, 2143,
308 2150, 2155, 2160, 2164, 2170, 2174, 2178, 2182, 2185, 2187,
309 2189, 2192, 2195, 2198, 2199, 2200, 2201, 2203, 2205, 2208,
310 2212, 2214, 2217, 2218, 2224, 2225, 2226, 2233, 2235, 2236,
311 2241, 2243, 2245, 2247, 2250, 2251, 2252, 2259, 2261, 2262,
312 2263, 2271, 2272, 2273, 2281, 2282, 2283, 2284, 2285, 2300,
313 2301, 2302, 2312, 2313, 2319, 2320, 2328, 2329, 2334, 2337,
314 2340, 2343, 2347, 2354, 2363, 2374, 2387, 2392, 2396, 2399,
315 2402, 2404, 2406, 2407, 2408, 2415, 2416, 2417, 2423, 2425,
316 2428, 2429, 2430, 2431, 2440, 2442, 2444, 2448, 2452, 2455,
317 2458, 2461, 2464, 2467, 2469, 2472, 2473, 2475, 2476, 2478,
318 2480, 2481, 2483, 2485, 2489, 2494, 2496, 2500, 2501, 2503,
319 2505, 2507, 2510, 2513, 2516, 2518, 2520, 2523, 2526, 2529,
320 2532, 2533, 2537, 2539, 2541, 2543, 2546, 2549, 2552, 2557,
321 2560, 2563, 2566, 2569, 2572, 2575, 2577, 2580, 2582, 2585,
322 2587, 2589, 2590, 2591, 2593, 2594, 2599, 2602, 2604, 2606,
323 2610, 2611, 2615, 2619, 2623, 2625, 2628, 2631, 2634, 2637,
324 2640, 2643, 2646, 2649, 2652, 2655, 2658, 2661, 2664, 2667,
325 2670, 2673, 2676, 2679, 2682, 2685, 2688, 2691, 2694, 2698,
326 2701, 2704, 2707, 2710, 2714, 2717, 2720, 2725, 2730, 2734
861bb6c1
JL
327};
328
329static const short yyrhs[] = { -1,
386b8a85
JM
330 115, 0, 0, 116, 122, 0, 115, 122, 0, 115,
331 0, 0, 0, 0, 33, 0, 27, 0, 28, 0,
73b0fce8 332 0, 123, 124, 0, 142, 141, 0, 138, 0, 137,
cf776105 333 0, 121, 94, 208, 110, 61, 0, 129, 59, 117,
73b0fce8
KL
334 111, 0, 129, 118, 142, 119, 141, 0, 129, 118,
335 138, 119, 0, 0, 45, 157, 59, 125, 117, 111,
336 0, 0, 45, 59, 126, 117, 111, 0, 45, 157,
386b8a85 337 65, 128, 61, 0, 127, 61, 0, 47, 45, 128,
cf776105
JM
338 61, 0, 120, 124, 0, 47, 300, 0, 47, 313,
339 300, 0, 47, 313, 199, 0, 199, 0, 300, 0,
340 313, 300, 0, 313, 199, 0, 100, 0, 129, 100,
386b8a85 341 0, 0, 49, 75, 131, 132, 76, 0, 49, 75,
73b0fce8 342 76, 0, 136, 0, 132, 60, 136, 0, 157, 0,
cf776105
JM
343 0, 257, 133, 0, 46, 133, 0, 130, 257, 133,
344 0, 134, 0, 134, 65, 214, 0, 380, 0, 380,
345 65, 194, 0, 135, 0, 135, 65, 176, 0, 130,
346 124, 0, 130, 1, 0, 225, 61, 0, 218, 224,
347 61, 0, 215, 223, 61, 0, 218, 61, 0, 160,
348 61, 0, 215, 61, 0, 1, 61, 0, 1, 111,
349 0, 61, 0, 209, 0, 153, 0, 0, 152, 0,
350 152, 61, 0, 0, 109, 0, 148, 140, 139, 325,
351 0, 148, 140, 350, 0, 148, 140, 1, 0, 0,
352 305, 5, 94, 144, 371, 110, 287, 383, 0, 305,
353 5, 48, 287, 383, 0, 0, 313, 305, 5, 94,
354 145, 371, 110, 287, 383, 0, 313, 305, 5, 48,
355 287, 383, 0, 0, 305, 172, 94, 146, 371, 110,
356 287, 383, 0, 305, 172, 48, 287, 383, 0, 0,
357 313, 305, 172, 94, 147, 371, 110, 287, 383, 0,
358 313, 305, 172, 48, 287, 383, 0, 215, 212, 0,
359 218, 297, 0, 297, 0, 218, 143, 0, 143, 0,
360 5, 94, 371, 110, 287, 383, 0, 5, 48, 287,
361 383, 0, 172, 94, 371, 110, 287, 383, 0, 172,
362 48, 287, 383, 0, 218, 149, 0, 149, 0, 215,
363 212, 0, 218, 297, 0, 297, 0, 218, 143, 0,
364 143, 0, 130, 150, 0, 25, 3, 0, 151, 242,
365 0, 151, 94, 188, 110, 0, 151, 48, 0, 63,
73b0fce8 366 154, 155, 0, 0, 0, 156, 0, 155, 60, 156,
cf776105
JM
367 0, 155, 1, 0, 94, 188, 110, 0, 48, 0,
368 158, 94, 188, 110, 0, 158, 48, 0, 293, 94,
369 188, 110, 0, 293, 48, 0, 307, 94, 188, 110,
370 0, 307, 48, 0, 3, 0, 4, 0, 5, 0,
73b0fce8 371 57, 0, 58, 0, 3, 0, 57, 0, 58, 0,
cf776105
JM
372 106, 0, 105, 0, 107, 0, 0, 49, 169, 221,
373 61, 161, 170, 0, 0, 49, 169, 215, 212, 162,
374 170, 0, 0, 49, 169, 297, 163, 170, 0, 0,
73b0fce8 375 49, 169, 143, 164, 170, 0, 0, 7, 49, 169,
cf776105
JM
376 221, 61, 165, 170, 0, 0, 7, 49, 169, 215,
377 212, 166, 170, 0, 0, 7, 49, 169, 297, 167,
73b0fce8
KL
378 170, 0, 0, 7, 49, 169, 143, 168, 170, 0,
379 0, 0, 57, 75, 174, 173, 0, 4, 75, 174,
380 173, 0, 172, 0, 5, 75, 174, 173, 0, 76,
381 0, 78, 0, 0, 175, 0, 176, 0, 175, 60,
cf776105
JM
382 176, 0, 214, 0, 194, 0, 80, 0, 79, 0,
383 87, 0, 88, 0, 112, 0, 187, 0, 194, 0,
384 48, 0, 94, 178, 110, 0, 48, 0, 94, 182,
385 110, 0, 0, 182, 0, 1, 0, 0, 361, 212,
386 226, 235, 65, 183, 243, 0, 178, 0, 111, 0,
387 322, 318, 111, 0, 322, 318, 1, 111, 0, 322,
388 1, 111, 0, 0, 59, 186, 184, 0, 334, 0,
389 194, 60, 194, 0, 194, 60, 1, 0, 187, 60,
390 194, 0, 187, 60, 1, 0, 194, 0, 187, 0,
391 203, 0, 120, 193, 0, 81, 193, 0, 71, 193,
392 0, 89, 193, 0, 177, 193, 0, 68, 157, 0,
393 13, 189, 0, 13, 94, 214, 110, 0, 30, 189,
394 0, 30, 94, 214, 110, 0, 205, 286, 0, 205,
395 286, 191, 0, 205, 190, 286, 0, 205, 190, 286,
396 191, 0, 205, 94, 214, 110, 0, 205, 94, 214,
397 110, 191, 0, 205, 190, 94, 214, 110, 0, 205,
398 190, 94, 214, 110, 191, 0, 206, 193, 0, 206,
399 95, 113, 193, 0, 206, 95, 178, 113, 193, 0,
400 35, 193, 0, 36, 193, 0, 94, 188, 110, 0,
401 59, 188, 111, 0, 94, 188, 110, 0, 48, 0,
402 94, 221, 110, 0, 65, 243, 0, 94, 214, 110,
403 0, 192, 94, 214, 110, 0, 189, 0, 192, 189,
404 0, 192, 59, 244, 255, 111, 0, 193, 0, 194,
405 84, 194, 0, 194, 85, 194, 0, 194, 79, 194,
406 0, 194, 80, 194, 0, 194, 81, 194, 0, 194,
407 82, 194, 0, 194, 83, 194, 0, 194, 77, 194,
408 0, 194, 78, 194, 0, 194, 74, 194, 0, 194,
409 75, 194, 0, 194, 76, 194, 0, 194, 73, 194,
410 0, 194, 72, 194, 0, 194, 71, 194, 0, 194,
411 69, 194, 0, 194, 70, 194, 0, 194, 68, 194,
412 0, 194, 67, 194, 0, 194, 66, 366, 63, 194,
413 0, 194, 65, 194, 0, 194, 64, 194, 0, 62,
414 0, 62, 194, 0, 89, 381, 157, 0, 197, 0,
415 388, 0, 3, 0, 57, 0, 58, 0, 0, 6,
416 75, 196, 174, 173, 0, 388, 75, 196, 174, 173,
417 0, 49, 157, 75, 174, 173, 0, 49, 6, 75,
418 174, 173, 0, 49, 388, 75, 174, 173, 0, 195,
419 0, 4, 0, 5, 0, 195, 0, 81, 200, 0,
420 71, 200, 0, 94, 200, 110, 0, 3, 75, 174,
421 173, 0, 58, 75, 175, 173, 0, 299, 0, 195,
422 0, 201, 0, 94, 200, 110, 0, 195, 0, 10,
423 0, 207, 0, 208, 0, 94, 178, 110, 0, 94,
424 200, 110, 0, 94, 1, 110, 0, 0, 94, 204,
425 326, 110, 0, 203, 94, 188, 110, 0, 203, 48,
426 0, 203, 95, 178, 113, 0, 203, 87, 0, 203,
427 88, 0, 41, 0, 9, 94, 188, 110, 0, 303,
428 0, 51, 75, 214, 76, 94, 178, 110, 0, 52,
429 75, 214, 76, 94, 178, 110, 0, 53, 75, 214,
430 76, 94, 178, 110, 0, 54, 75, 214, 76, 94,
431 178, 110, 0, 50, 94, 178, 110, 0, 50, 94,
432 214, 110, 0, 313, 3, 0, 313, 388, 0, 302,
433 0, 302, 94, 188, 110, 0, 302, 48, 0, 210,
434 198, 0, 210, 198, 94, 188, 110, 0, 210, 198,
435 48, 0, 210, 199, 0, 210, 302, 0, 210, 199,
436 94, 188, 110, 0, 210, 199, 48, 0, 210, 302,
437 94, 188, 110, 0, 210, 302, 48, 0, 210, 89,
438 8, 48, 0, 210, 8, 55, 89, 8, 48, 0,
439 210, 1, 0, 40, 0, 313, 40, 0, 39, 0,
440 313, 206, 0, 43, 0, 44, 0, 11, 0, 208,
441 11, 0, 0, 203, 93, 0, 203, 92, 0, 221,
442 223, 61, 0, 215, 223, 61, 0, 218, 224, 61,
443 0, 215, 61, 0, 218, 61, 0, 120, 211, 0,
444 292, 0, 297, 0, 48, 0, 213, 48, 0, 219,
445 316, 0, 288, 316, 0, 221, 316, 0, 219, 0,
446 288, 0, 219, 0, 216, 0, 218, 221, 0, 221,
447 217, 0, 221, 220, 217, 0, 218, 221, 217, 0,
448 218, 221, 220, 0, 218, 221, 220, 217, 0, 7,
449 0, 217, 222, 0, 217, 7, 0, 217, 236, 0,
450 236, 0, 288, 0, 7, 0, 218, 9, 0, 218,
451 7, 0, 218, 236, 0, 236, 0, 221, 0, 288,
452 221, 0, 221, 220, 0, 288, 221, 220, 0, 222,
453 0, 220, 222, 0, 250, 0, 8, 0, 294, 0,
454 29, 94, 178, 110, 0, 29, 94, 214, 110, 0,
455 31, 94, 178, 110, 0, 31, 94, 214, 110, 0,
456 8, 0, 9, 0, 250, 0, 227, 0, 223, 60,
457 229, 0, 231, 0, 224, 60, 229, 0, 233, 0,
458 225, 60, 229, 0, 0, 121, 94, 208, 110, 0,
459 0, 212, 226, 235, 65, 228, 243, 0, 212, 226,
460 235, 0, 0, 212, 226, 235, 65, 230, 243, 0,
461 212, 226, 235, 0, 0, 297, 226, 235, 65, 232,
462 243, 0, 297, 226, 235, 0, 0, 297, 226, 235,
463 65, 234, 243, 0, 297, 226, 235, 0, 0, 236,
464 0, 237, 0, 236, 237, 0, 32, 94, 94, 238,
465 110, 110, 0, 239, 0, 238, 60, 239, 0, 0,
466 240, 0, 240, 94, 3, 110, 0, 240, 94, 3,
467 60, 188, 110, 0, 240, 94, 188, 110, 0, 157,
468 0, 7, 0, 8, 0, 9, 0, 157, 0, 241,
469 60, 157, 0, 0, 65, 243, 0, 194, 0, 59,
470 111, 0, 59, 244, 111, 0, 59, 244, 60, 111,
471 0, 1, 0, 243, 0, 244, 60, 243, 0, 95,
472 194, 113, 243, 0, 244, 60, 21, 194, 63, 243,
473 0, 157, 63, 243, 0, 244, 60, 157, 63, 243,
474 0, 99, 0, 245, 140, 139, 325, 0, 245, 140,
475 350, 0, 245, 140, 1, 0, 0, 247, 246, 141,
476 0, 104, 194, 109, 0, 104, 1, 109, 0, 0,
477 249, 248, 0, 249, 1, 0, 0, 14, 157, 59,
478 251, 284, 256, 111, 0, 14, 157, 59, 111, 0,
479 0, 14, 59, 252, 284, 256, 111, 0, 14, 59,
480 111, 0, 14, 157, 0, 14, 311, 0, 46, 307,
481 0, 0, 0, 264, 270, 272, 111, 235, 253, 249,
482 254, 247, 0, 264, 0, 0, 60, 0, 0, 60,
483 0, 37, 0, 257, 7, 0, 257, 8, 0, 257,
484 9, 0, 257, 37, 0, 257, 157, 0, 257, 159,
485 0, 257, 305, 157, 0, 257, 313, 305, 157, 0,
486 257, 313, 157, 0, 257, 171, 0, 257, 305, 171,
487 0, 0, 258, 0, 259, 261, 265, 0, 260, 265,
488 0, 257, 59, 0, 263, 0, 262, 0, 0, 63,
489 381, 0, 63, 381, 266, 0, 267, 0, 266, 60,
490 381, 267, 0, 268, 0, 269, 381, 268, 0, 307,
491 0, 293, 0, 31, 94, 178, 110, 0, 31, 94,
492 214, 110, 0, 38, 381, 0, 7, 381, 0, 269,
493 38, 381, 0, 269, 7, 381, 0, 59, 0, 0,
494 271, 0, 271, 273, 0, 272, 38, 63, 273, 0,
495 272, 38, 63, 0, 274, 0, 273, 274, 0, 275,
496 61, 0, 275, 111, 0, 150, 63, 0, 150, 96,
497 0, 150, 25, 0, 150, 59, 0, 61, 0, 120,
498 274, 0, 215, 276, 0, 218, 277, 0, 297, 226,
499 235, 242, 0, 143, 226, 235, 242, 0, 63, 194,
500 0, 1, 0, 218, 149, 226, 235, 242, 0, 149,
501 226, 235, 242, 0, 127, 0, 130, 275, 0, 0,
502 278, 0, 276, 60, 279, 0, 0, 281, 0, 277,
503 60, 283, 0, 280, 0, 281, 0, 282, 0, 283,
504 0, 292, 226, 235, 242, 0, 4, 63, 194, 235,
505 0, 297, 226, 235, 242, 0, 143, 226, 235, 242,
506 0, 3, 63, 194, 235, 0, 63, 194, 235, 0,
507 292, 226, 235, 242, 0, 4, 63, 194, 235, 0,
508 297, 226, 235, 242, 0, 3, 63, 194, 235, 0,
509 63, 194, 235, 0, 285, 0, 284, 60, 285, 0,
510 157, 0, 157, 65, 194, 0, 361, 314, 0, 361,
511 0, 94, 214, 110, 95, 178, 113, 0, 0, 287,
512 9, 0, 9, 0, 288, 9, 0, 0, 289, 178,
513 0, 289, 94, 188, 110, 0, 289, 94, 371, 110,
514 0, 289, 48, 0, 289, 94, 1, 110, 0, 81,
515 288, 292, 0, 71, 288, 292, 0, 81, 292, 0,
516 71, 292, 0, 312, 287, 292, 0, 296, 0, 304,
517 0, 313, 304, 0, 293, 0, 295, 0, 313, 295,
518 0, 305, 304, 0, 296, 291, 287, 383, 0, 296,
519 95, 290, 113, 0, 296, 95, 113, 0, 94, 292,
520 110, 0, 305, 304, 0, 304, 0, 81, 288, 297,
521 0, 71, 288, 297, 0, 81, 297, 0, 71, 297,
522 0, 312, 287, 297, 0, 202, 0, 81, 288, 297,
523 0, 71, 288, 297, 0, 81, 298, 0, 71, 298,
524 0, 312, 287, 297, 0, 299, 0, 202, 291, 287,
525 383, 0, 94, 298, 110, 0, 202, 95, 290, 113,
526 0, 202, 95, 113, 0, 301, 0, 305, 201, 0,
527 305, 199, 0, 305, 198, 0, 305, 195, 0, 305,
528 198, 0, 301, 0, 313, 301, 0, 221, 94, 188,
529 110, 0, 221, 94, 200, 110, 0, 221, 213, 0,
530 4, 0, 5, 0, 171, 0, 306, 0, 305, 306,
531 0, 4, 55, 0, 5, 55, 0, 58, 55, 0,
532 171, 55, 0, 308, 0, 313, 308, 0, 309, 157,
533 0, 310, 0, 309, 310, 0, 4, 55, 0, 5,
534 55, 0, 171, 55, 0, 57, 55, 0, 3, 55,
535 0, 58, 55, 0, 313, 304, 0, 295, 0, 313,
536 295, 0, 305, 81, 0, 313, 305, 81, 0, 55,
537 0, 81, 287, 314, 0, 81, 287, 0, 71, 287,
538 314, 0, 71, 287, 0, 312, 287, 0, 312, 287,
539 314, 0, 315, 0, 95, 178, 113, 0, 315, 95,
540 290, 113, 0, 81, 288, 316, 0, 81, 316, 0,
541 81, 288, 0, 81, 0, 71, 288, 316, 0, 71,
542 316, 0, 71, 288, 0, 71, 0, 312, 287, 0,
543 312, 287, 316, 0, 317, 0, 94, 316, 110, 0,
544 91, 0, 317, 94, 371, 110, 287, 383, 0, 317,
545 48, 287, 383, 0, 317, 95, 290, 113, 0, 317,
546 95, 113, 0, 94, 372, 110, 287, 383, 0, 192,
547 287, 383, 0, 213, 287, 383, 0, 95, 290, 113,
548 0, 95, 113, 0, 333, 0, 319, 0, 318, 333,
549 0, 318, 319, 0, 1, 61, 0, 0, 0, 0,
550 323, 0, 324, 0, 323, 324, 0, 34, 241, 61,
551 0, 326, 0, 1, 326, 0, 0, 59, 327, 320,
552 184, 321, 0, 0, 0, 15, 329, 320, 180, 330,
553 331, 0, 326, 0, 0, 320, 332, 334, 321, 0,
554 326, 0, 334, 0, 211, 0, 178, 61, 0, 0,
555 0, 328, 16, 335, 331, 336, 321, 0, 328, 0,
556 0, 0, 17, 337, 320, 180, 338, 185, 321, 0,
557 0, 0, 18, 339, 331, 17, 340, 179, 61, 0,
558 0, 0, 0, 0, 19, 341, 94, 364, 342, 320,
559 181, 61, 343, 366, 110, 344, 185, 321, 0, 0,
560 0, 20, 320, 94, 182, 110, 345, 331, 346, 321,
561 0, 0, 21, 194, 63, 347, 333, 0, 0, 21,
562 194, 12, 194, 63, 348, 333, 0, 0, 22, 63,
563 349, 333, 0, 23, 61, 0, 24, 61, 0, 25,
564 61, 0, 25, 178, 61, 0, 121, 365, 94, 208,
565 110, 61, 0, 121, 365, 94, 208, 63, 367, 110,
566 61, 0, 121, 365, 94, 208, 63, 367, 63, 367,
567 110, 61, 0, 121, 365, 94, 208, 63, 367, 63,
568 367, 63, 370, 110, 61, 0, 26, 81, 178, 61,
569 0, 26, 157, 61, 0, 363, 333, 0, 363, 111,
570 0, 61, 0, 353, 0, 0, 0, 96, 351, 139,
571 326, 352, 356, 0, 0, 0, 96, 354, 326, 355,
572 356, 0, 357, 0, 356, 357, 0, 0, 0, 0,
573 97, 358, 320, 362, 359, 326, 360, 321, 0, 219,
574 0, 288, 0, 94, 12, 110, 0, 94, 380, 110,
575 0, 3, 63, 0, 57, 63, 0, 4, 63, 0,
576 5, 63, 0, 366, 61, 0, 211, 0, 59, 184,
577 0, 0, 9, 0, 0, 178, 0, 1, 0, 0,
578 368, 0, 369, 0, 368, 60, 369, 0, 11, 94,
579 178, 110, 0, 11, 0, 370, 60, 11, 0, 0,
580 372, 0, 214, 0, 376, 0, 377, 12, 0, 376,
581 12, 0, 214, 12, 0, 12, 0, 98, 0, 376,
582 98, 0, 214, 98, 0, 376, 63, 0, 214, 63,
583 0, 0, 65, 374, 375, 0, 103, 0, 243, 0,
584 378, 0, 380, 373, 0, 377, 379, 0, 377, 382,
585 0, 377, 382, 65, 243, 0, 376, 60, 0, 214,
586 60, 0, 216, 212, 0, 219, 212, 0, 221, 212,
587 0, 216, 316, 0, 216, 0, 218, 297, 0, 380,
588 0, 380, 373, 0, 378, 0, 214, 0, 0, 0,
589 297, 0, 0, 62, 94, 385, 110, 0, 62, 48,
590 0, 214, 0, 384, 0, 385, 60, 384, 0, 0,
591 81, 287, 386, 0, 71, 287, 386, 0, 312, 287,
592 386, 0, 42, 0, 387, 81, 0, 387, 82, 0,
593 387, 83, 0, 387, 79, 0, 387, 80, 0, 387,
594 71, 0, 387, 69, 0, 387, 70, 0, 387, 89,
595 0, 387, 60, 0, 387, 74, 0, 387, 75, 0,
596 387, 76, 0, 387, 73, 0, 387, 64, 0, 387,
597 65, 0, 387, 77, 0, 387, 78, 0, 387, 87,
598 0, 387, 88, 0, 387, 68, 0, 387, 67, 0,
599 387, 112, 0, 387, 66, 63, 0, 387, 72, 0,
600 387, 92, 0, 387, 84, 0, 387, 48, 0, 387,
601 95, 113, 0, 387, 40, 0, 387, 39, 0, 387,
602 40, 95, 113, 0, 387, 39, 95, 113, 0, 387,
603 361, 386, 0, 387, 1, 0
861bb6c1
JL
604};
605
606#endif
607
608#if YYDEBUG != 0
609static const short yyrline[] = { 0,
cf776105
JM
610 311, 313, 327, 330, 331, 335, 337, 340, 345, 349,
611 355, 357, 360, 363, 367, 370, 372, 374, 377, 379,
612 382, 385, 387, 389, 391, 393, 395, 397, 403, 407,
613 410, 412, 416, 418, 419, 421, 425, 428, 434, 437,
614 439, 444, 447, 451, 454, 457, 469, 473, 491, 501,
615 503, 505, 507, 509, 522, 531, 541, 544, 546, 550,
616 552, 553, 560, 561, 562, 565, 568, 572, 574, 575,
617 578, 580, 583, 586, 588, 592, 602, 604, 614, 623,
618 625, 635, 644, 646, 656, 665, 667, 679, 687, 694,
619 699, 706, 713, 716, 718, 720, 726, 736, 738, 741,
620 744, 746, 749, 751, 755, 764, 767, 769, 773, 786,
621 806, 809, 811, 812, 815, 822, 828, 830, 832, 834,
622 836, 839, 844, 846, 847, 848, 849, 852, 854, 855,
623 858, 860, 861, 864, 869, 869, 873, 873, 876, 876,
624 879, 879, 883, 883, 888, 888, 891, 891, 894, 896,
625 899, 906, 913, 919, 922, 931, 933, 941, 944, 947,
626 950, 954, 957, 960, 963, 965, 967, 969, 973, 976,
627 979, 984, 988, 993, 997, 1000, 1002, 1006, 1026, 1033,
628 1036, 1038, 1039, 1040, 1043, 1054, 1063, 1067, 1071, 1074,
629 1076, 1080, 1083, 1086, 1090, 1093, 1095, 1097, 1099, 1106,
630 1119, 1121, 1123, 1125, 1131, 1134, 1137, 1140, 1143, 1147,
631 1150, 1153, 1157, 1159, 1163, 1167, 1169, 1173, 1176, 1183,
632 1186, 1188, 1196, 1205, 1211, 1218, 1220, 1222, 1235, 1238,
633 1240, 1242, 1244, 1246, 1248, 1250, 1252, 1254, 1256, 1258,
634 1260, 1262, 1264, 1266, 1268, 1270, 1272, 1274, 1276, 1278,
635 1282, 1284, 1286, 1303, 1306, 1307, 1308, 1309, 1310, 1313,
636 1316, 1319, 1323, 1326, 1328, 1333, 1335, 1336, 1339, 1341,
637 1343, 1345, 1349, 1352, 1356, 1358, 1359, 1360, 1364, 1372,
638 1373, 1374, 1382, 1390, 1398, 1400, 1412, 1442, 1449, 1456,
639 1458, 1467, 1472, 1495, 1539, 1540, 1544, 1548, 1552, 1556,
640 1558, 1562, 1564, 1572, 1574, 1579, 1585, 1589, 1594, 1599,
641 1601, 1606, 1621, 1636, 1647, 1659, 1667, 1676, 1720, 1723,
642 1727, 1730, 1734, 1737, 1742, 1744, 1748, 1761, 1764, 1771,
643 1778, 1783, 1785, 1790, 1792, 1799, 1801, 1805, 1809, 1815,
644 1819, 1822, 1825, 1828, 1838, 1840, 1843, 1847, 1850, 1853,
645 1856, 1859, 1865, 1871, 1873, 1878, 1880, 1889, 1892, 1894,
646 1897, 1903, 1905, 1915, 1919, 1922, 1925, 1930, 1933, 1941,
647 1943, 1945, 1947, 1950, 1953, 1968, 1987, 1990, 1992, 1995,
648 1997, 2000, 2002, 2005, 2007, 2010, 2013, 2017, 2036, 2038,
649 2058, 2064, 2065, 2071, 2080, 2082, 2092, 2101, 2103, 2115,
650 2118, 2122, 2125, 2129, 2134, 2137, 2141, 2144, 2146, 2148,
651 2150, 2157, 2159, 2160, 2161, 2165, 2168, 2172, 2175, 2181,
652 2183, 2186, 2189, 2192, 2198, 2201, 2204, 2206, 2208, 2210,
653 2214, 2220, 2228, 2230, 2234, 2236, 2241, 2244, 2247, 2249,
654 2251, 2255, 2259, 2264, 2268, 2271, 2276, 2280, 2283, 2286,
655 2290, 2325, 2331, 2340, 2360, 2362, 2365, 2367, 2372, 2374,
656 2376, 2378, 2380, 2384, 2389, 2394, 2400, 2405, 2410, 2412,
657 2416, 2421, 2424, 2431, 2459, 2465, 2467, 2470, 2473, 2475,
658 2479, 2481, 2485, 2511, 2540, 2543, 2544, 2565, 2588, 2590,
659 2594, 2620, 2629, 2718, 2725, 2728, 2736, 2747, 2756, 2760,
660 2775, 2778, 2783, 2785, 2787, 2789, 2791, 2793, 2798, 2804,
661 2806, 2809, 2812, 2814, 2825, 2830, 2833, 2835, 2840, 2843,
662 2844, 2855, 2858, 2859, 2870, 2872, 2875, 2877, 2880, 2887,
663 2895, 2902, 2908, 2914, 2922, 2926, 2931, 2935, 2938, 2947,
664 2949, 2953, 2956, 2961, 2965, 2970, 2980, 2983, 2987, 2991,
665 2999, 3004, 3010, 3013, 3015, 3017, 3023, 3026, 3028, 3030,
666 3032, 3036, 3039, 3057, 3067, 3069, 3070, 3074, 3079, 3082,
667 3084, 3086, 3088, 3092, 3098, 3101, 3103, 3105, 3107, 3111,
668 3114, 3117, 3119, 3121, 3123, 3127, 3130, 3133, 3135, 3137,
669 3139, 3146, 3157, 3161, 3166, 3170, 3175, 3177, 3181, 3184,
670 3186, 3190, 3192, 3193, 3196, 3198, 3204, 3219, 3225, 3231,
671 3245, 3247, 3251, 3267, 3273, 3288, 3299, 3305, 3307, 3308,
672 3309, 3317, 3326, 3327, 3331, 3334, 3340, 3346, 3349, 3351,
673 3353, 3355, 3359, 3363, 3367, 3370, 3375, 3378, 3380, 3382,
674 3384, 3386, 3388, 3390, 3392, 3396, 3400, 3404, 3408, 3409,
675 3411, 3413, 3415, 3417, 3419, 3421, 3423, 3425, 3433, 3435,
676 3436, 3437, 3440, 3448, 3453, 3460, 3462, 3467, 3469, 3472,
677 3486, 3489, 3492, 3501, 3513, 3524, 3544, 3554, 3557, 3565,
678 3577, 3580, 3583, 3586, 3602, 3605, 3616, 3617, 3621, 3636,
679 3655, 3667, 3681, 3695, 3708, 3727, 3745, 3764, 3772, 3793,
680 3811, 3824, 3825, 3828, 3828, 3831, 3831, 3834, 3834, 3840,
681 3846, 3849, 3854, 3861, 3870, 3879, 3888, 3896, 3909, 3911,
682 3915, 3917, 3920, 3927, 3930, 3938, 3954, 3965, 3977, 3979,
683 3982, 3992, 4002, 4013, 4015, 4017, 4020, 4037, 4043, 4051,
684 4053, 4055, 4059, 4062, 4063, 4071, 4075, 4079, 4082, 4083,
685 4089, 4092, 4095, 4097, 4101, 4106, 4109, 4119, 4124, 4125,
686 4133, 4139, 4144, 4148, 4153, 4157, 4161, 4165, 4170, 4181,
687 4195, 4199, 4202, 4204, 4208, 4212, 4215, 4218, 4220, 4224,
688 4226, 4233, 4240, 4243, 4246, 4250, 4254, 4260, 4264, 4269,
689 4271, 4274, 4279, 4285, 4296, 4299, 4301, 4305, 4310, 4312,
690 4319, 4322, 4324, 4326, 4332, 4337, 4340, 4342, 4344, 4346,
691 4348, 4350, 4352, 4354, 4356, 4358, 4360, 4362, 4364, 4366,
692 4368, 4370, 4372, 4374, 4376, 4378, 4380, 4382, 4384, 4386,
693 4388, 4390, 4392, 4394, 4396, 4398, 4400, 4402, 4405, 4407
861bb6c1 694};
8eeda2ec
JM
695#endif
696
697
698#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
861bb6c1
JL
699
700static const char * const yytname[] = { "$","error","$undefined.","IDENTIFIER",
386b8a85
JM
701"TYPENAME","SELFNAME","PFUNCNAME","SCSPEC","TYPESPEC","CV_QUALIFIER","CONSTANT",
702"STRING","ELLIPSIS","SIZEOF","ENUM","IF","ELSE","WHILE","DO","FOR","SWITCH",
703"CASE","DEFAULT","BREAK","CONTINUE","RETURN","GOTO","ASM_KEYWORD","GCC_ASM_KEYWORD",
704"TYPEOF","ALIGNOF","SIGOF","ATTRIBUTE","EXTENSION","LABEL","REALPART","IMAGPART",
705"AGGR","VISSPEC","DELETE","NEW","THIS","OPERATOR","CXX_TRUE","CXX_FALSE","NAMESPACE",
861bb6c1
JL
706"TYPENAME_KEYWORD","USING","LEFT_RIGHT","TEMPLATE","TYPEID","DYNAMIC_CAST","STATIC_CAST",
707"REINTERPRET_CAST","CONST_CAST","SCOPE","EMPTY","PTYPENAME","NSNAME","'{'","','",
708"';'","THROW","':'","ASSIGN","'='","'?'","OROR","ANDAND","'|'","'^'","'&'","MIN_MAX",
709"EQCOMPARE","ARITHCOMPARE","'<'","'>'","LSHIFT","RSHIFT","'+'","'-'","'*'","'/'",
710"'%'","POINTSAT_STAR","DOT_STAR","UNARY","PLUSPLUS","MINUSMINUS","'~'","HYPERUNARY",
711"PAREN_STAR_PAREN","POINTSAT","'.'","'('","'['","TRY","CATCH","TYPENAME_ELLIPSIS",
712"PRE_PARSED_FUNCTION_DECL","EXTERN_LANG_STRING","ALL","PRE_PARSED_CLASS_DECL",
713"DEFARG","DEFARG_MARKER","TYPENAME_DEFN","IDENTIFIER_DEFN","PTYPENAME_DEFN",
714"END_OF_LINE","END_OF_SAVED_INPUT","')'","'}'","'!'","']'","program","extdefs",
715"@1","extdefs_opt",".hush_warning",".warning_ok","extension","asm_keyword","lang_extdef",
716"@2","extdef","@3","@4","using_decl","any_id","extern_lang_string","template_header",
73b0fce8
KL
717"@5","template_parm_list","maybe_identifier","template_type_parm","template_template_parm",
718"template_parm","template_def","datadef","ctor_initializer_opt","maybe_return_init",
719"eat_saved_input","fndef","constructor_declarator","@6","@7","@8","@9","fn.def1",
720"component_constructor_declarator","fn.def2","return_id","return_init","base_init",
721".set_base_init","member_init_list","member_init","identifier","notype_identifier",
722"identifier_defn","explicit_instantiation","@10","@11","@12","@13","@14","@15",
723"@16","@17","begin_explicit_instantiation","end_explicit_instantiation","template_type",
724"self_template_type","template_close_bracket","template_arg_list_opt","template_arg_list",
cf776105
JM
725"template_arg","unop","expr","paren_expr_or_null","paren_cond_or_null","xcond",
726"condition","@18","compstmtend","already_scoped_stmt","@19","nontrivial_exprlist",
73b0fce8
KL
727"nonnull_exprlist","unary_expr","new_placement","new_initializer","regcast_or_absdcl",
728"cast_expr","expr_no_commas","notype_unqualified_id","do_id","template_id","object_template_id",
729"unqualified_id","expr_or_declarator","notype_template_declarator","direct_notype_declarator",
cf776105 730"primary","@20","new","delete","boolean.literal","string","nodecls","object",
73b0fce8
KL
731"decl","declarator","fcast_or_absdcl","type_id","typed_declspecs","typed_declspecs1",
732"reserved_declspecs","declmods","typed_typespecs","reserved_typespecquals","typespec",
733"typespecqual_reserved","initdecls","notype_initdecls","nomods_initdecls","maybeasm",
cf776105 734"initdcl0","@21","initdcl","@22","notype_initdcl0","@23","nomods_initdcl0","@24",
73b0fce8
KL
735"maybe_attribute","attributes","attribute","attribute_list","attrib","any_word",
736"identifiers_or_typenames","maybe_init","init","initlist","fn.defpen","pending_inline",
cf776105
JM
737"pending_inlines","defarg_again","pending_defargs","structsp","@25","@26","@27",
738"@28","maybecomma","maybecomma_warn","aggr","named_class_head_sans_basetype",
73b0fce8
KL
739"named_class_head_sans_basetype_defn","named_complex_class_head_sans_basetype",
740"do_xref_defn","named_class_head","unnamed_class_head","class_head","maybe_base_class_list",
741"base_class_list","base_class","base_class.1","base_class_access_list","left_curly",
742"self_reference","opt.component_decl_list","component_decl_list","component_decl",
743"component_decl_1","components","notype_components","component_declarator0",
744"component_declarator","after_type_component_declarator0","notype_component_declarator0",
745"after_type_component_declarator","notype_component_declarator","enumlist","enumerator",
746"new_type_id","cv_qualifiers","nonempty_cv_qualifiers","suspend_mom","nonmomentary_expr",
747"maybe_parmlist","after_type_declarator","nonnested_type","complete_type_name",
748"nested_type","direct_after_type_declarator","notype_declarator","complex_notype_declarator",
749"complex_direct_notype_declarator","qualified_id","notype_qualified_id","overqualified_id",
750"functional_cast","type_name","nested_name_specifier","nested_name_specifier_1",
751"typename_sub","typename_sub0","typename_sub1","typename_sub2","complex_type_name",
752"ptr_to_mem","global_scope","new_declarator","direct_new_declarator","absdcl",
753"direct_abstract_declarator","stmts","errstmt",".pushlevel",".poplevel","maybe_label_decls",
cf776105
JM
754"label_decls","label_decl","compstmt_or_error","compstmt","@29","simple_if",
755"@30","@31","implicitly_scoped_stmt","@32","stmt","simple_stmt","@33","@34",
756"@35","@36","@37","@38","@39","@40","@41","@42","@43","@44","@45","@46","@47",
757"function_try_block","@48","@49","try_block","@50","@51","handler_seq","handler",
758"@52","@53","@54","type_specifier_seq","handler_args","label_colon","for.init.statement",
73b0fce8 759"maybe_cv_qualifier","xexpr","asm_operands","nonnull_asm_operands","asm_operand",
cf776105 760"asm_clobbers","parmlist","complex_parmlist","defarg","@55","defarg1","parms",
73b0fce8
KL
761"parms_comma","named_parm","full_parm","parm","see_typename","bad_parm","exception_specification_opt",
762"ansi_raise_identifier","ansi_raise_identifiers","conversion_declarator","operator",
763"operator_name", NULL
861bb6c1
JL
764};
765#endif
766
767static const short yyr1[] = { 0,
386b8a85
JM
768 114, 114, 116, 115, 115, 117, 117, 118, 119, 120,
769 121, 121, 123, 122, 124, 124, 124, 124, 124, 124,
770 124, 125, 124, 126, 124, 124, 124, 124, 124, 127,
771 127, 127, 128, 128, 128, 128, 129, 129, 131, 130,
73b0fce8
KL
772 130, 132, 132, 133, 133, 134, 134, 135, 136, 136,
773 136, 136, 136, 136, 137, 137, 138, 138, 138, 138,
774 138, 138, 138, 138, 138, 139, 139, 140, 140, 140,
775 141, 141, 142, 142, 142, 144, 143, 143, 145, 143,
776 143, 146, 143, 143, 147, 143, 143, 148, 148, 148,
777 148, 148, 149, 149, 149, 149, 150, 150, 150, 150,
778 150, 150, 150, 150, 151, 152, 152, 152, 153, 154,
779 155, 155, 155, 155, 156, 156, 156, 156, 156, 156,
780 156, 156, 157, 157, 157, 157, 157, 158, 158, 158,
781 159, 159, 159, 161, 160, 162, 160, 163, 160, 164,
782 160, 165, 160, 166, 160, 167, 160, 168, 160, 169,
783 170, 171, 171, 171, 172, 173, 173, 174, 174, 175,
cf776105
JM
784 175, 176, 176, 177, 177, 177, 177, 177, 178, 178,
785 179, 179, 180, 180, 181, 181, 181, 183, 182, 182,
786 184, 184, 184, 184, 186, 185, 185, 187, 187, 187,
787 187, 188, 188, 189, 189, 189, 189, 189, 189, 189,
788 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
789 189, 189, 189, 189, 189, 189, 189, 190, 190, 191,
790 191, 191, 191, 192, 192, 193, 193, 193, 194, 194,
791 194, 194, 194, 194, 194, 194, 194, 194, 194, 194,
792 194, 194, 194, 194, 194, 194, 194, 194, 194, 194,
793 194, 194, 194, 195, 195, 195, 195, 195, 195, 196,
794 197, 197, 198, 198, 198, 199, 199, 199, 200, 200,
795 200, 200, 201, 201, 202, 202, 202, 202, 203, 203,
796 203, 203, 203, 203, 203, 204, 203, 203, 203, 203,
797 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
798 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
799 203, 203, 203, 203, 203, 203, 203, 203, 205, 205,
800 206, 206, 207, 207, 208, 208, 209, 210, 210, 211,
801 211, 211, 211, 211, 211, 212, 212, 213, 213, 214,
802 214, 214, 214, 214, 215, 215, 216, 216, 216, 216,
803 216, 216, 217, 217, 217, 217, 217, 218, 218, 218,
804 218, 218, 218, 219, 219, 219, 219, 220, 220, 221,
805 221, 221, 221, 221, 221, 221, 222, 222, 222, 223,
806 223, 224, 224, 225, 225, 226, 226, 228, 227, 227,
807 230, 229, 229, 232, 231, 231, 234, 233, 233, 235,
808 235, 236, 236, 237, 238, 238, 239, 239, 239, 239,
809 239, 240, 240, 240, 240, 241, 241, 242, 242, 243,
810 243, 243, 243, 243, 244, 244, 244, 244, 244, 244,
811 245, 246, 246, 246, 247, 247, 248, 248, 249, 249,
812 249, 251, 250, 250, 252, 250, 250, 250, 250, 250,
813 253, 254, 250, 250, 255, 255, 256, 256, 257, 257,
814 257, 257, 257, 258, 259, 260, 260, 260, 260, 260,
815 261, 262, 262, 262, 263, 264, 264, 265, 265, 265,
816 266, 266, 267, 267, 268, 268, 268, 268, 269, 269,
817 269, 269, 270, 271, 272, 272, 272, 272, 273, 273,
818 274, 274, 274, 274, 274, 274, 274, 274, 275, 275,
819 275, 275, 275, 275, 275, 275, 275, 275, 276, 276,
820 276, 277, 277, 277, 278, 278, 279, 279, 280, 280,
821 281, 281, 281, 281, 282, 282, 283, 283, 283, 284,
822 284, 285, 285, 286, 286, 286, 287, 287, 288, 288,
823 289, 290, 291, 291, 291, 291, 292, 292, 292, 292,
824 292, 292, 293, 293, 294, 294, 294, 295, 296, 296,
825 296, 296, 296, 296, 297, 297, 297, 297, 297, 297,
73b0fce8 826 298, 298, 298, 298, 298, 298, 299, 299, 299, 299,
cf776105
JM
827 299, 299, 300, 300, 301, 301, 302, 302, 303, 303,
828 303, 304, 304, 304, 305, 305, 306, 306, 306, 306,
829 307, 307, 308, 309, 309, 310, 310, 310, 310, 310,
830 310, 311, 311, 311, 312, 312, 313, 314, 314, 314,
831 314, 314, 314, 314, 315, 315, 316, 316, 316, 316,
832 316, 316, 316, 316, 316, 316, 316, 317, 317, 317,
833 317, 317, 317, 317, 317, 317, 317, 317, 318, 318,
834 318, 318, 319, 320, 321, 322, 322, 323, 323, 324,
835 325, 325, 327, 326, 329, 330, 328, 331, 332, 331,
836 333, 333, 334, 334, 335, 336, 334, 334, 337, 338,
837 334, 339, 340, 334, 341, 342, 343, 344, 334, 345,
838 346, 334, 347, 334, 348, 334, 349, 334, 334, 334,
839 334, 334, 334, 334, 334, 334, 334, 334, 334, 334,
840 334, 334, 351, 352, 350, 354, 355, 353, 356, 356,
841 358, 359, 360, 357, 361, 361, 362, 362, 363, 363,
842 363, 363, 364, 364, 364, 365, 365, 366, 366, 366,
843 367, 367, 368, 368, 369, 370, 370, 371, 371, 371,
844 372, 372, 372, 372, 372, 372, 372, 372, 372, 372,
845 374, 373, 375, 375, 376, 376, 376, 376, 376, 377,
846 377, 378, 378, 378, 378, 378, 378, 379, 379, 380,
847 380, 381, 382, 382, 383, 383, 383, 384, 385, 385,
848 386, 386, 386, 386, 387, 388, 388, 388, 388, 388,
849 388, 388, 388, 388, 388, 388, 388, 388, 388, 388,
850 388, 388, 388, 388, 388, 388, 388, 388, 388, 388,
851 388, 388, 388, 388, 388, 388, 388, 388, 388, 388
861bb6c1
JL
852};
853
854static const short yyr2[] = { 0,
855 0, 1, 0, 2, 2, 1, 0, 0, 0, 1,
856 1, 1, 0, 2, 2, 1, 1, 5, 4, 5,
857 4, 0, 6, 0, 5, 5, 2, 4, 2, 2,
858 3, 3, 1, 1, 2, 2, 1, 2, 0, 5,
73b0fce8
KL
859 3, 1, 3, 1, 0, 2, 2, 3, 1, 3,
860 1, 3, 1, 3, 2, 2, 2, 3, 3, 2,
861 2, 2, 2, 2, 1, 1, 1, 0, 1, 2,
862 0, 1, 4, 3, 3, 0, 8, 5, 0, 9,
863 6, 0, 8, 5, 0, 9, 6, 2, 2, 1,
864 2, 1, 6, 4, 6, 4, 2, 1, 2, 2,
865 1, 2, 1, 2, 2, 2, 4, 2, 3, 0,
866 0, 1, 3, 2, 3, 1, 4, 2, 4, 2,
867 4, 2, 1, 1, 1, 1, 1, 1, 1, 1,
868 1, 1, 1, 0, 6, 0, 6, 0, 5, 0,
869 5, 0, 7, 0, 7, 0, 6, 0, 6, 0,
870 0, 4, 4, 1, 4, 1, 1, 0, 1, 1,
cf776105
JM
871 3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
872 1, 3, 1, 3, 0, 1, 1, 0, 7, 1,
873 1, 3, 4, 3, 0, 3, 1, 3, 3, 3,
874 3, 1, 1, 1, 2, 2, 2, 2, 2, 2,
875 2, 4, 2, 4, 2, 3, 3, 4, 4, 5,
876 5, 6, 2, 4, 5, 2, 2, 3, 3, 3,
877 1, 3, 2, 3, 4, 1, 2, 5, 1, 3,
861bb6c1 878 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
cf776105
JM
879 3, 3, 3, 3, 3, 3, 3, 3, 5, 3,
880 3, 1, 2, 3, 1, 1, 1, 1, 1, 0,
881 5, 5, 5, 5, 5, 1, 1, 1, 1, 2,
882 2, 3, 4, 4, 1, 1, 1, 3, 1, 1,
883 1, 1, 3, 3, 3, 0, 4, 4, 2, 4,
884 2, 2, 1, 4, 1, 7, 7, 7, 7, 4,
885 4, 2, 2, 1, 4, 2, 2, 5, 3, 2,
886 2, 5, 3, 5, 3, 4, 6, 2, 1, 2,
887 1, 2, 1, 1, 1, 2, 0, 2, 2, 3,
888 3, 3, 2, 2, 2, 1, 1, 1, 2, 2,
889 2, 2, 1, 1, 1, 1, 2, 2, 3, 3,
890 3, 4, 1, 2, 2, 2, 1, 1, 1, 2,
891 2, 2, 1, 1, 2, 2, 3, 1, 2, 1,
892 1, 1, 4, 4, 4, 4, 1, 1, 1, 1,
893 3, 1, 3, 1, 3, 0, 4, 0, 6, 3,
894 0, 6, 3, 0, 6, 3, 0, 6, 3, 0,
895 1, 1, 2, 6, 1, 3, 0, 1, 4, 6,
896 4, 1, 1, 1, 1, 1, 3, 0, 2, 1,
897 2, 3, 4, 1, 1, 3, 4, 6, 3, 5,
898 1, 4, 3, 3, 0, 3, 3, 3, 0, 2,
899 2, 0, 7, 4, 0, 6, 3, 2, 2, 2,
900 0, 0, 9, 1, 0, 1, 0, 1, 1, 2,
901 2, 2, 2, 2, 2, 3, 4, 3, 2, 3,
902 0, 1, 3, 2, 2, 1, 1, 0, 2, 3,
903 1, 4, 1, 3, 1, 1, 4, 4, 2, 2,
904 3, 3, 1, 0, 1, 2, 4, 3, 1, 2,
905 2, 2, 2, 2, 2, 2, 1, 2, 2, 2,
906 4, 4, 2, 1, 5, 4, 1, 2, 0, 1,
907 3, 0, 1, 3, 1, 1, 1, 1, 4, 4,
908 4, 4, 4, 3, 4, 4, 4, 4, 3, 1,
909 3, 1, 3, 2, 1, 6, 0, 2, 1, 2,
910 0, 2, 4, 4, 2, 4, 3, 3, 2, 2,
911 3, 1, 1, 2, 1, 1, 2, 2, 4, 4,
912 3, 3, 2, 1, 3, 3, 2, 2, 3, 1,
913 3, 3, 2, 2, 3, 1, 4, 3, 4, 3,
914 1, 2, 2, 2, 2, 2, 1, 2, 4, 4,
915 2, 1, 1, 1, 1, 2, 2, 2, 2, 2,
916 1, 2, 2, 1, 2, 2, 2, 2, 2, 2,
917 2, 2, 1, 2, 2, 3, 1, 3, 2, 3,
918 2, 2, 3, 1, 3, 4, 3, 2, 2, 1,
919 3, 2, 2, 1, 2, 3, 1, 3, 1, 6,
920 4, 4, 3, 5, 3, 3, 3, 2, 1, 1,
921 2, 2, 2, 0, 0, 0, 1, 1, 2, 3,
922 1, 2, 0, 5, 0, 0, 6, 1, 0, 4,
923 1, 1, 1, 2, 0, 0, 6, 1, 0, 0,
924 7, 0, 0, 7, 0, 0, 0, 0, 14, 0,
925 0, 9, 0, 5, 0, 7, 0, 4, 2, 2,
926 2, 3, 6, 8, 10, 12, 4, 3, 2, 2,
927 1, 1, 0, 0, 6, 0, 0, 5, 1, 2,
928 0, 0, 0, 8, 1, 1, 3, 3, 2, 2,
929 2, 2, 2, 1, 2, 0, 1, 0, 1, 1,
930 0, 1, 1, 3, 4, 1, 3, 0, 1, 1,
931 1, 2, 2, 2, 1, 1, 2, 2, 2, 2,
932 0, 3, 1, 1, 1, 2, 2, 2, 4, 2,
933 2, 2, 2, 2, 2, 1, 2, 1, 2, 1,
934 1, 0, 0, 1, 0, 4, 2, 1, 1, 3,
935 0, 3, 3, 3, 1, 2, 2, 2, 2, 2,
73b0fce8 936 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
cf776105
JM
937 2, 2, 2, 2, 2, 2, 2, 2, 3, 2,
938 2, 2, 2, 3, 2, 2, 4, 4, 3, 2
861bb6c1
JL
939};
940
941static const short yydefact[] = { 3,
cf776105
JM
942 13, 13, 5, 0, 4, 0, 257, 602, 603, 0,
943 359, 371, 549, 0, 11, 12, 0, 0, 0, 10,
944 459, 805, 0, 0, 0, 150, 627, 258, 259, 65,
945 0, 0, 792, 0, 37, 0, 0, 14, 0, 8,
946 0, 17, 16, 71, 92, 68, 0, 604, 154, 276,
947 255, 277, 580, 0, 346, 0, 345, 364, 0, 384,
948 363, 402, 370, 0, 472, 471, 478, 477, 476, 454,
949 358, 565, 372, 566, 90, 275, 591, 563, 0, 605,
950 547, 0, 0, 256, 63, 64, 158, 607, 158, 608,
951 158, 260, 150, 123, 124, 125, 126, 127, 445, 448,
952 0, 623, 0, 449, 0, 0, 0, 0, 124, 125,
73b0fce8 953 126, 127, 24, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
954 450, 611, 0, 614, 0, 0, 0, 0, 0, 0,
955 30, 0, 0, 39, 0, 158, 609, 0, 0, 578,
956 0, 0, 0, 577, 0, 0, 0, 0, 276, 0,
957 551, 0, 275, 547, 29, 0, 27, 3, 38, 0,
958 56, 55, 72, 15, 0, 0, 418, 69, 61, 610,
959 551, 0, 547, 62, 0, 0, 0, 88, 0, 380,
960 336, 562, 337, 574, 0, 547, 361, 360, 60, 91,
961 347, 0, 382, 362, 89, 353, 377, 378, 348, 366,
962 368, 357, 379, 0, 57, 403, 460, 461, 462, 463,
963 475, 132, 131, 133, 464, 465, 469, 0, 0, 478,
964 792, 474, 493, 494, 550, 365, 0, 0, 400, 603,
965 0, 625, 154, 595, 596, 592, 568, 606, 0, 567,
966 564, 0, 840, 836, 835, 833, 815, 820, 821, 0,
967 827, 826, 812, 813, 811, 830, 819, 816, 817, 818,
968 822, 823, 809, 810, 806, 807, 808, 832, 824, 825,
969 814, 831, 0, 828, 735, 364, 736, 801, 260, 257,
970 549, 280, 325, 0, 0, 0, 0, 321, 319, 293,
971 323, 324, 0, 0, 0, 0, 0, 259, 252, 0,
972 0, 165, 164, 0, 166, 167, 0, 0, 168, 0,
973 0, 159, 160, 0, 226, 0, 229, 163, 279, 194,
974 0, 0, 281, 282, 0, 162, 343, 364, 344, 597,
975 304, 295, 0, 0, 0, 0, 158, 0, 447, 0,
976 442, 624, 622, 0, 169, 170, 0, 0, 0, 407,
977 3, 22, 0, 620, 616, 617, 619, 621, 618, 123,
978 124, 125, 126, 127, 613, 615, 612, 267, 268, 0,
979 266, 33, 34, 0, 594, 593, 32, 31, 41, 0,
980 359, 140, 0, 0, 364, 138, 0, 0, 576, 0,
981 575, 254, 271, 0, 584, 270, 0, 583, 0, 278,
982 588, 0, 0, 13, 0, 150, 9, 9, 105, 75,
983 110, 723, 0, 67, 66, 74, 108, 0, 0, 106,
984 70, 590, 0, 0, 555, 0, 795, 0, 560, 0,
985 559, 0, 0, 0, 0, 547, 400, 0, 59, 551,
986 547, 573, 0, 350, 351, 0, 58, 400, 355, 354,
987 356, 349, 369, 386, 385, 466, 470, 468, 0, 473,
988 479, 0, 0, 367, 0, 399, 401, 547, 76, 0,
989 0, 0, 547, 82, 548, 579, 603, 626, 154, 0,
990 0, 829, 834, 366, 547, 547, 0, 547, 839, 158,
991 0, 0, 0, 201, 0, 0, 203, 216, 217, 0,
992 0, 0, 0, 0, 253, 200, 197, 196, 198, 0,
993 0, 0, 0, 0, 279, 0, 0, 0, 195, 156,
994 157, 273, 0, 199, 0, 0, 227, 0, 0, 0,
861bb6c1 995 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
996 0, 0, 0, 0, 0, 0, 0, 0, 0, 289,
997 291, 292, 329, 328, 0, 0, 0, 0, 0, 205,
998 545, 0, 213, 326, 318, 0, 792, 307, 310, 311,
999 0, 0, 338, 644, 640, 649, 0, 551, 547, 547,
1000 547, 340, 647, 0, 601, 342, 0, 0, 341, 306,
1001 0, 302, 320, 322, 598, 0, 303, 153, 155, 0,
1002 148, 0, 364, 146, 542, 457, 540, 444, 0, 373,
1003 0, 0, 374, 375, 376, 413, 414, 415, 412, 0,
1004 405, 408, 0, 3, 0, 28, 36, 35, 45, 0,
1005 0, 0, 49, 53, 42, 791, 786, 0, 343, 364,
1006 45, 344, 790, 51, 151, 136, 134, 151, 152, 274,
1007 582, 581, 278, 585, 0, 19, 21, 71, 111, 327,
1008 0, 673, 73, 671, 424, 0, 420, 419, 193, 0,
1009 192, 552, 589, 0, 765, 766, 0, 760, 364, 0,
1010 759, 761, 793, 775, 0, 0, 587, 558, 557, 0,
1011 0, 572, 0, 390, 381, 571, 0, 795, 561, 352,
1012 383, 396, 400, 467, 602, 603, 792, 0, 792, 604,
1013 480, 481, 483, 792, 486, 485, 0, 514, 603, 0,
1014 507, 0, 0, 517, 0, 103, 98, 0, 154, 519,
1015 522, 0, 499, 0, 101, 0, 400, 0, 397, 795,
1016 758, 158, 158, 158, 795, 758, 547, 79, 547, 85,
1017 838, 837, 801, 801, 801, 0, 0, 0, 0, 601,
1018 0, 0, 0, 0, 364, 0, 0, 0, 285, 0,
1019 283, 284, 0, 224, 161, 257, 602, 603, 258, 259,
1020 0, 0, 425, 455, 0, 251, 250, 750, 749, 0,
1021 248, 247, 245, 246, 244, 243, 242, 239, 240, 241,
1022 237, 238, 232, 233, 234, 235, 236, 230, 231, 0,
1023 0, 0, 0, 0, 0, 207, 221, 0, 0, 206,
1024 547, 547, 0, 547, 544, 634, 0, 0, 0, 0,
1025 309, 0, 313, 0, 315, 0, 643, 642, 639, 638,
1026 791, 0, 0, 658, 0, 0, 795, 339, 795, 645,
1027 547, 758, 551, 644, 640, 0, 0, 547, 0, 0,
1028 0, 0, 0, 261, 151, 144, 142, 151, 0, 458,
1029 0, 457, 191, 190, 189, 188, 407, 0, 0, 25,
1030 0, 26, 47, 44, 45, 0, 40, 0, 0, 644,
1031 640, 0, 782, 547, 785, 787, 0, 783, 784, 46,
1032 464, 0, 141, 151, 151, 139, 18, 20, 128, 116,
1033 129, 130, 0, 109, 112, 0, 0, 0, 0, 672,
1034 664, 421, 0, 107, 556, 553, 764, 781, 770, 768,
1035 0, 554, 763, 780, 769, 767, 762, 794, 777, 788,
1036 778, 771, 776, 797, 0, 388, 570, 569, 394, 393,
1037 490, 0, 489, 792, 792, 792, 0, 547, 758, 513,
1038 508, 104, 518, 400, 400, 505, 506, 503, 504, 547,
1039 758, 257, 602, 0, 386, 99, 509, 520, 525, 526,
1040 386, 386, 0, 0, 386, 97, 510, 523, 386, 500,
1041 501, 502, 400, 0, 451, 387, 0, 78, 0, 0,
1042 0, 0, 84, 0, 795, 758, 795, 758, 803, 802,
1043 804, 262, 294, 202, 204, 300, 301, 0, 0, 0,
1044 0, 284, 287, 0, 0, 0, 0, 225, 0, 288,
1045 290, 219, 218, 209, 0, 208, 223, 0, 0, 631,
1046 629, 0, 632, 551, 214, 0, 0, 316, 0, 0,
1047 0, 641, 637, 648, 547, 657, 655, 656, 646, 795,
1048 0, 653, 0, 599, 600, 0, 305, 149, 151, 151,
1049 147, 543, 541, 446, 0, 406, 404, 257, 0, 23,
1050 48, 43, 50, 54, 643, 639, 644, 640, 0, 563,
1051 0, 547, 645, 52, 137, 135, 0, 114, 0, 118,
1052 0, 120, 0, 122, 0, 724, 666, 0, 422, 644,
1053 640, 0, 279, 0, 597, 789, 0, 0, 798, 799,
1054 0, 0, 0, 391, 0, 0, 0, 492, 491, 484,
1055 795, 0, 418, 418, 795, 0, 0, 0, 400, 400,
1056 0, 400, 400, 0, 400, 0, 418, 0, 439, 398,
1057 547, 264, 263, 265, 547, 81, 0, 87, 0, 0,
1058 0, 0, 0, 0, 429, 0, 0, 426, 228, 249,
1059 0, 210, 211, 220, 222, 630, 628, 635, 633, 0,
1060 215, 0, 308, 312, 314, 795, 651, 547, 652, 145,
1061 143, 443, 0, 409, 411, 643, 639, 568, 645, 115,
1062 113, 0, 0, 0, 0, 0, 181, 665, 0, 667,
1063 668, 423, 0, 600, 779, 773, 774, 772, 0, 796,
1064 389, 395, 0, 487, 488, 482, 94, 547, 512, 516,
1065 96, 547, 400, 400, 534, 418, 257, 602, 0, 521,
1066 527, 528, 386, 386, 418, 418, 0, 418, 524, 511,
1067 0, 795, 795, 547, 547, 0, 0, 0, 0, 427,
1068 0, 0, 0, 212, 636, 317, 654, 795, 0, 117,
1069 119, 121, 731, 725, 729, 416, 0, 674, 0, 257,
1070 602, 603, 675, 689, 692, 695, 664, 0, 0, 0,
1071 0, 0, 0, 258, 721, 726, 0, 746, 0, 683,
1072 0, 0, 364, 0, 660, 681, 688, 659, 682, 722,
1073 0, 669, 284, 800, 392, 795, 795, 533, 530, 532,
1074 0, 0, 400, 400, 400, 529, 531, 515, 441, 0,
1075 440, 435, 77, 83, 795, 795, 296, 297, 298, 299,
1076 0, 430, 546, 650, 410, 664, 730, 0, 670, 663,
1077 184, 739, 741, 742, 664, 664, 664, 0, 0, 0,
1078 707, 709, 710, 711, 0, 0, 0, 740, 0, 335,
1079 747, 0, 684, 333, 386, 0, 334, 0, 386, 0,
1080 0, 0, 182, 662, 661, 685, 720, 719, 93, 95,
1081 400, 400, 539, 418, 418, 0, 0, 453, 80, 86,
1082 428, 0, 417, 0, 0, 679, 678, 0, 0, 0,
1083 0, 703, 0, 712, 0, 718, 727, 0, 331, 332,
1084 0, 0, 0, 330, 183, 664, 538, 536, 535, 537,
1085 438, 437, 431, 68, 71, 0, 732, 173, 0, 676,
1086 690, 0, 693, 666, 744, 696, 0, 180, 0, 364,
1087 0, 0, 0, 708, 717, 0, 0, 686, 0, 436,
1088 0, 0, 0, 0, 664, 0, 665, 0, 745, 664,
1089 743, 700, 386, 705, 704, 728, 751, 0, 665, 434,
1090 0, 433, 737, 738, 733, 174, 677, 185, 665, 187,
1091 680, 171, 0, 0, 0, 664, 400, 0, 0, 0,
1092 752, 753, 713, 687, 432, 665, 666, 691, 0, 694,
1093 177, 0, 176, 701, 0, 706, 0, 751, 0, 0,
1094 734, 186, 172, 697, 665, 178, 0, 0, 714, 754,
1095 0, 702, 0, 755, 0, 0, 0, 179, 756, 0,
1096 715, 698, 0, 0, 0, 757, 716, 665, 699, 0,
1097 0, 0
861bb6c1
JL
1098};
1099
cf776105
JM
1100static const short yydefgoto[] = { 1550,
1101 404, 2, 405, 160, 657, 310, 228, 3, 4, 38,
1102 624, 351, 724, 370, 40, 725, 380, 632, 883, 633,
1103 634, 635, 42, 43, 413, 166, 164, 44, 726, 741,
1104 1006, 746, 1008, 46, 727, 728, 167, 168, 414, 659,
1105 914, 915, 605, 916, 216, 47, 905, 904, 648, 645,
1106 1070, 1069, 868, 865, 135, 903, 48, 49, 522, 311,
1107 312, 313, 314, 1299, 1494, 1440, 1512, 1449, 1533, 1208,
1108 1489, 1507, 345, 857, 315, 559, 820, 316, 317, 346,
1109 319, 337, 51, 235, 372, 393, 52, 53, 320, 517,
1110 321, 322, 323, 324, 415, 325, 1300, 454, 580, 326,
1111 1301, 55, 199, 638, 327, 200, 495, 201, 179, 192,
1112 59, 437, 180, 1122, 455, 1223, 193, 1123, 60, 997,
1113 466, 61, 62, 620, 621, 622, 1277, 420, 783, 784,
1114 1434, 1435, 1398, 1331, 1251, 63, 609, 340, 1149, 1332,
1115 1027, 871, 64, 65, 66, 67, 220, 68, 69, 70,
1116 222, 711, 712, 713, 714, 224, 462, 463, 732, 733,
1117 734, 977, 987, 978, 1240, 979, 980, 1241, 1242, 606,
1118 607, 560, 847, 329, 423, 424, 173, 181, 72, 73,
1119 74, 182, 183, 152, 76, 131, 330, 331, 332, 78,
1120 333, 80, 716, 122, 123, 124, 104, 81, 334, 825,
1121 826, 842, 583, 1304, 1305, 1406, 1278, 1209, 1210, 1211,
1122 663, 1306, 921, 1307, 1355, 1465, 1408, 1442, 1308, 1309,
1123 1426, 1479, 1356, 1466, 1357, 1468, 1358, 1470, 1531, 1545,
1124 1496, 1525, 1453, 1498, 1413, 416, 660, 1205, 1310, 1369,
1125 1456, 1274, 1275, 1346, 1463, 1506, 1451, 1437, 1311, 1446,
1126 1372, 790, 1500, 1501, 1502, 1540, 680, 681, 943, 1118,
1127 1218, 682, 683, 684, 939, 685, 145, 941, 687, 1120,
1128 1121, 489, 83, 84
861bb6c1
JL
1129};
1130
cf776105
JM
1131static const short yypact[] = { 81,
1132 98,-32768,-32768, 5542,-32768, 180, 55, 184, 269, 124,
1133 59,-32768,-32768, 1447,-32768,-32768, 42, 232, 243,-32768,
1134-32768,-32768, 1477, 647, 1059, 161,-32768, 296, 307,-32768,
1135 2186, 2186,-32768, 4882,-32768, 5542, 261,-32768, 402, 29,
1136 10110,-32768,-32768, 314,-32768, 462, 490, 516,-32768,-32768,
1137-32768,-32768, 175, 978,-32768, 2303,-32768, 1948, 280,-32768,
1138 543,-32768,-32768, 1152,-32768,-32768, 538,-32768,-32768, 530,
1139 3742,-32768,-32768,-32768, 1483,-32768,-32768,-32768, 709,-32768,
1140-32768, 729, 7746, 573,-32768,-32768, 9078,-32768, 9078,-32768,
1141 9078,-32768,-32768,-32768, 184, 269, 296, 563, 542, 604,
1142 516,-32768, 729,-32768, 729, 9078, 9078, 580,-32768,-32768,
1143-32768,-32768,-32768, 687, 612, 549, 587, 654, 629, 638,
1144-32768,-32768, 1237,-32768, 1259, 184, 269, 1745, 296, 563,
1145-32768, 2873, 875, 620, 10275, 9078,-32768, 9078, 2442,-32768,
1146 1270, 1017, 2442,-32768, 1298, 3365, 3365, 4882, 590, 601,
1147 623, 626, 651,-32768,-32768, 746,-32768, 658,-32768, 4414,
1148 180,-32768,-32768,-32768, 779, 147, 327, 717,-32768,-32768,
1149 678, 214,-32768,-32768, 3555, 3555, 5044, 1483, 353,-32768,
1150-32768, 183,-32768,-32768, 2894,-32768,-32768,-32768,-32768,-32768,
1151 1948, 456,-32768, 543, 1483,-32768,-32768,-32768, 2130, 1948,
1152-32768, 543,-32768, 5077,-32768,-32768,-32768,-32768,-32768,-32768,
1153-32768,-32768,-32768,-32768,-32768,-32768, 516, 1552, 1552, 538,
1154-32768,-32768,-32768,-32768,-32768, 689, 729, 703, 543, 140,
1155 1700,-32768, 253,-32768,-32768,-32768,-32768,-32768, 3732,-32768,
1156-32768, 331,-32768, 732, 736,-32768,-32768,-32768,-32768, 782,
386b8a85 1157-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
861bb6c1 1158-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
cf776105
JM
1159-32768,-32768, 728,-32768,-32768, 689, 3742, 574,-32768,-32768,
1160 756,-32768,-32768, 9693, 9780, 9867, 9867,-32768,-32768,-32768,
1161-32768,-32768, 762, 787, 794, 796, 800, 563, 9165, 1298,
1162 9867,-32768,-32768, 9867,-32768,-32768, 9867, 7310,-32768, 9867,
1163 400, 836,-32768, 9867,-32768, 9252,-32768, 5717,-32768, 1780,
1164 2174, 9339,-32768, 879, 2803,-32768, 1287, 4058, 3815,-32768,
1165 315,-32768, 2998, 1368, 400, 400, 9078, 10275,-32768, 1298,
1166 788,-32768,-32768, 791, 843, 5934, 803, 804, 808, 1884,
1167 658,-32768, 1745,-32768,-32768,-32768,-32768,-32768,-32768, 612,
1168 549, 587, 654, 629,-32768,-32768,-32768, 184, 269, 860,
1169-32768,-32768,-32768, 875,-32768,-32768,-32768,-32768,-32768, 5296,
1170-32768,-32768, 5077, 2550, 2067,-32768, 400, 599,-32768, 362,
1171-32768,-32768,-32768, 2442,-32768,-32768, 2442,-32768, 821,-32768,
1172-32768, 3732, 69, 818, 827,-32768,-32768,-32768,-32768,-32768,
1173-32768,-32768, 74,-32768,-32768,-32768,-32768, 7402, 9165,-32768,
1174-32768,-32768, 9165, 831,-32768, 6638, 146, 3836,-32768, 3836,
1175-32768, 4313, 4313, 5044, 835,-32768, 543, 5077,-32768, 844,
1176-32768,-32768, 4665, 2130, 1948, 5077,-32768, 543,-32768,-32768,
1177 543, 2130,-32768, 421,-32768,-32768, 516,-32768, 1552,-32768,
1178 1970, 3278, 7, 689, 746, 882, 543,-32768,-32768, 884,
1179 888, 890,-32768,-32768,-32768,-32768, 433,-32768, 333, 856,
1180 857,-32768,-32768, 689,-32768,-32768, 413,-32768,-32768, 9078,
1181 9165, 756, 7310,-32768, 367, 7310,-32768,-32768,-32768, 9078,
1182 4421, 4421, 4421, 4421, 10521,-32768,-32768,-32768,-32768, 861,
1183 9954, 9954, 7310, 864, 590, 868, 921, 876,-32768,-32768,
1184-32768,-32768, 9078,-32768, 7119, 7310,-32768, 9165, 9165, 5814,
1185 9165, 9165, 9165, 9165, 9165, 9165, 9165, 9165, 9165, 9165,
1186 9165, 9165, 9165, 9165, 9165, 9165, 9165, 9165, 9165,-32768,
1187-32768,-32768,-32768,-32768, 9165, 9165, 9165, 9078, 1983, 497,
1188 302, 8110,-32768,-32768,-32768, 930, 983, 388, 397, 399,
1189 3089, 1017,-32768, 526, 526,-32768, 3623, 880, 904, 955,
1190-32768,-32768, 345, 6155, 1530,-32768, 726, 729,-32768,-32768,
1191 9165,-32768,-32768,-32768,-32768, 182,-32768,-32768,-32768, 400,
1192-32768, 5077, 2651,-32768, 941, 948,-32768,-32768, 1298,-32768,
1193 7839, 7931,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 80,
1194-32768, 917, 903, 658, 956,-32768,-32768,-32768, 1167, 161,
1195 979, 212, 960, 962,-32768,-32768, 3452, 10331, 3452, 2877,
1196 1152, 6277,-32768, 965,-32768,-32768,-32768,-32768,-32768,-32768,
1197-32768,-32768, 928,-32768, 970,-32768,-32768, 314, 789, 981,
1198 921,-32768,-32768,-32768,-32768, 6840, 10521,-32768, 843, 937,
1199 5934,-32768,-32768, 938,-32768,-32768, 943, 309, 5611, 947,
1200-32768, 201, 5401, 995, 996, 442,-32768,-32768,-32768, 3836,
1201 3836,-32768, 4665, 1001,-32768,-32768, 958, 146,-32768, 2130,
1202-32768, 1008, 543,-32768, 549, 587,-32768, 986,-32768, 638,
1203 1022,-32768,-32768, 218,-32768,-32768, 1626,-32768, 459, 1085,
1204-32768, 9165, 10169,-32768, 5213, 300, 300, 256, 453, 2430,
1205 10230, 3562,-32768, 192, 300, 1021, 543, 71,-32768, 146,
1206 1892, 9078, 9078, 9078, 146, 1892,-32768,-32768,-32768,-32768,
1207-32768,-32768, 751, 751, 751, 400, 982, 984, 9432, 955,
1208 989, 992, 1002, 1015, 4671, 1043, 1045, 1049,-32768, 1016,
1209-32768,-32768, 1027,-32768,-32768, 1064, 448, 501, 41, 483,
1210 9165, 1069,-32768, 1081, 1035, 10521, 10521,-32768,-32768, 1086,
1211 10539, 4480, 8135, 10450, 1988, 5956, 5437, 2324, 2324, 2324,
1212 2166, 2166, 1171, 1171, 719, 719, 719,-32768,-32768, 1040,
1213 1038, 1041, 1048, 1052, 4421, 497,-32768, 7402, 9165,-32768,
1214-32768,-32768, 9165,-32768,-32768, 1068, 9867, 1051, 1076, 1119,
1215-32768, 9165,-32768, 9165,-32768, 9165, 1630,-32768, 1630,-32768,
1216 142, 1058, 1067,-32768, 1062, 4421, 146,-32768, 146, 1735,
1217-32768, 1892, 1066, 8713, 8713, 6044, 1071, 9252, 1072, 3131,
1218 1368, 772, 1073,-32768,-32768,-32768,-32768,-32768, 9165, 1298,
1219 1074, 948,-32768, 10521,-32768, 10521, 1884, 1077, 9519,-32768,
1220 1079,-32768,-32768,-32768, 1409, 5296,-32768, 4421, 9078, 2627,
1221 2627, 3999,-32768,-32768,-32768,-32768, 2894,-32768,-32768,-32768,
1222 778, 9165,-32768,-32768,-32768,-32768,-32768,-32768, 612,-32768,
1223 654, 629, 9165, 1118,-32768, 472, 492, 496, 921,-32768,
1224-32768,-32768, 64,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1225 8617,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 996,
1226 1128,-32768,-32768,-32768, 4421,-32768,-32768,-32768,-32768, 1135,
1227-32768, 9078,-32768,-32768,-32768,-32768, 1065,-32768, 1892, 10521,
1228-32768,-32768,-32768, 543, 543,-32768,-32768,-32768,-32768,-32768,
1229 1892, 391, 750, 9165, 421,-32768, 1143,-32768,-32768,-32768,
1230 540, 830, 709, 1017, 909, 300, 1146,-32768, 933,-32768,
1231-32768,-32768, 543, 3928,-32768,-32768, 7402,-32768, 1098, 400,
1232 400, 400,-32768, 1102, 146, 1892, 146, 1892,-32768,-32768,
1233-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1120, 1123, 1124,
1234 1129, 928,-32768, 10407, 7402, 6935, 1117,-32768, 9165,-32768,
1235-32768,-32768,-32768, 622, 1121,-32768,-32768, 1126, 91, 554,
1236 554, 1116, 554,-32768,-32768, 9867, 1226,-32768, 1127, 1133,
1237 1137,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 146,
1238 1138,-32768, 1132,-32768,-32768, 3213,-32768,-32768,-32768,-32768,
1239-32768, 10521,-32768,-32768, 1159,-32768,-32768, 200, 1161,-32768,
1240-32768,-32768,-32768,-32768, 2700, 2700, 2991, 2991, 3999,-32768,
1241 2894,-32768, 3119, 5717,-32768,-32768, 1162,-32768, 789,-32768,
1242 9165,-32768, 9165,-32768, 9165,-32768, 61, 7027,-32768, 8806,
1243 8806, 6542, 411, 1170, 578,-32768, 7402, 7214,-32768,-32768,
1244 220, 7402, 7402,-32768, 1174, 1178, 1970,-32768,-32768,-32768,
1245 146, 1179, 1212, 1212, 146, 1180, 9165, 9165, 5896, 543,
1246 4772, 543, 543, 819, 543, 4781, 1212, 4583,-32768,-32768,
1247-32768,-32768,-32768,-32768,-32768,-32768, 1187,-32768, 1189, 9165,
1248 9165, 9165, 9165, 7402,-32768, 9165, 1247,-32768,-32768, 10521,
1249 9165,-32768, 622,-32768,-32768,-32768,-32768,-32768,-32768, 1198,
1250-32768, 1265,-32768,-32768,-32768, 146,-32768,-32768,-32768,-32768,
1251-32768,-32768, 9165,-32768,-32768, 2700, 2700,-32768, 3119,-32768,
1252-32768, 1204, 1210, 1211, 1227, 1298,-32768,-32768, 6448, 1292,
1253-32768,-32768, 1220, 1785,-32768,-32768,-32768,-32768, 4421,-32768,
1254-32768,-32768, 7402,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1255-32768,-32768, 5896, 5896,-32768, 1212, 410, 865, 9165,-32768,
1256-32768,-32768, 421, 421, 1212, 1212, 433, 1212,-32768,-32768,
1257 6337, 146, 146,-32768,-32768, 1221, 1224, 1228, 1230,-32768,
1258 10476, 7402, 1235,-32768,-32768,-32768,-32768, 146, 1231,-32768,
1259-32768,-32768,-32768, 1227,-32768,-32768, 760,-32768, 234, 1273,
1260 887, 891,-32768,-32768,-32768,-32768,-32768, 9165, 1274, 1272,
1261 1282, 8899, 611, 485,-32768,-32768, 8991, 1343, 1293,-32768,
1262 1556, 4998, 10376, 4203,-32768,-32768, 1345,-32768,-32768,-32768,
1263 8221,-32768, 792,-32768,-32768, 146, 146,-32768,-32768,-32768,
1264 9165, 9165, 5896, 543, 543,-32768,-32768,-32768,-32768, 8023,
1265-32768,-32768,-32768,-32768, 146, 146,-32768,-32768,-32768,-32768,
1266 7402,-32768,-32768,-32768,-32768,-32768,-32768, 1298,-32768,-32768,
1267-32768,-32768,-32768,-32768,-32768,-32768, 921, 1271, 1280, 4110,
1268-32768,-32768,-32768,-32768, 1303, 9165, 1314,-32768, 921,-32768,
1269-32768, 1283,-32768,-32768, 421, 775,-32768, 834, 421, 9606,
1270 846, 257,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1271 5896, 5896,-32768, 1212, 1212, 1267, 10429, 1281,-32768,-32768,
1272-32768, 1289,-32768, 582, 582,-32768,-32768, 1369, 6748, 9078,
1273 9165,-32768, 8331,-32768, 1324,-32768,-32768, 746,-32768,-32768,
1274 10041, 10041, 7494,-32768,-32768, 921,-32768,-32768,-32768,-32768,
1275-32768,-32768,-32768, 462, 314, 4328,-32768,-32768, 9078,-32768,
1276-32768, 8523,-32768, 61,-32768,-32768, 1326,-32768, 1284, 113,
1277 5077, 10499, 8331,-32768,-32768, 1227, 79,-32768, 170,-32768,
1278 1285, 1286, 921, 1290, 921, 8427,-32768, 596,-32768,-32768,
1279-32768,-32768, 421,-32768,-32768, 1227, 1381, 1332,-32768,-32768,
1280 74,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1281-32768,-32768, 9165, 1336, 7586, 921, 543, 8331, 1307, 31,
1282 1344,-32768,-32768,-32768,-32768,-32768, 61,-32768, 1301,-32768,
1283-32768, 1354,-32768,-32768, 1359,-32768, 9165, 1381, 1372, 1381,
1284-32768,-32768,-32768,-32768,-32768,-32768, 1319, 33,-32768,-32768,
1285 7678,-32768, 7402,-32768, 1426, 1380, 1333,-32768,-32768, 286,
1286-32768,-32768, 1431, 1383, 8427,-32768,-32768,-32768,-32768, 1445,
1287 1456,-32768
861bb6c1
JL
1288};
1289
1290static const short yypgoto[] = {-32768,
cf776105
JM
1291 1458,-32768, -331,-32768, 1039, 21, 35, 1457,-32768, 76,
1292-32768,-32768, 650, 1108,-32768, 6,-32768,-32768, -583,-32768,
1293-32768, 586,-32768, 1304, -645, 39, -655, 1315, 194,-32768,
1294-32768,-32768,-32768,-32768, 745, 753,-32768,-32768,-32768,-32768,
1295-32768, 384, 160,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1296-32768,-32768,-32768,-32768, 1392, -430, 5232, 40, -184, -62,
1297 1348, -485,-32768, 1160,-32768, 85,-32768, -1313,-32768, -1334,
1298 -53,-32768, 1223, 1327, -250,-32768, -747, 2265, -59, 3990,
1299 3265, 1214,-32768, -46, -60, 720, -48, -33,-32768,-32768,
1300-32768, -304,-32768, -149,-32768,-32768, -1213, -52, -315, 1263,
1301 0, 1193, -145, 56, 87, -165, -4, -94, -556, 193,
1302-32768, -70,-32768,-32768, 195,-32768,-32768,-32768,-32768,-32768,
1303 699, -42, -10,-32768, 630,-32768,-32768, -385, 16, 833,
1304-32768,-32768,-32768,-32768,-32768, 20,-32768,-32768,-32768,-32768,
1305-32768, 631, -357,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1306 1294,-32768, 385, 560,-32768,-32768,-32768,-32768, 524, -679,
1307 795,-32768,-32768,-32768,-32768,-32768, 790,-32768, 378, 916,
1308 657, 969, 1545, 18, 15, -416, 1356, 109, -433,-32768,
1309 95,-32768, 5034, -135, -1, -85, 3708, 1225,-32768, 4847,
1310 1533, 135, -16, -107,-32768, 1422,-32768, 4307, 2386, -333,
1311-32768, 1973,-32768,-32768, 242, -900, -1235,-32768,-32768, 341,
1312 89, -350,-32768,-32768,-32768,-32768, -1327,-32768, -1204, -1377,
1313-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1314-32768,-32768,-32768,-32768,-32768, 93,-32768,-32768,-32768,-32768,
1315-32768, 112, -1218,-32768,-32768,-32768, -64,-32768,-32768,-32768,
1316-32768, -1345, 54,-32768, 57,-32768, -529, -507, 639,-32768,
1317-32768,-32768,-32768, -374,-32768, -371, -181,-32768, 1846, 365,
1318-32768, 111,-32768, -214
861bb6c1
JL
1319};
1320
1321
cf776105 1322#define YYLAST 10624
386b8a85
JM
1323
1324
1325static const short yytable[] = { 58,
cf776105
JM
1326 151, 178, 908, 54, 229, 643, 403, 121, 644, 41,
1327 395, 398, 585, 194, 919, 202, 472, 367, 278, 623,
1328 1107, 71, 641, 697, 36, 445, 335, 715, 336, 594,
1329 236, 58, 153, 494, 497, 54, 58, 775, 37, 461,
1330 54, 41, 373, 961, 736, 444, 41, 378, 139, 143,
1331 206, 191, 990, 71, 452, 1347, 36, 900, 71, 56,
1332 464, 36, 664, 1447, 1467, 527, 226, 172, 1036, 843,
1333 37, 376, 377, 387, 661, 37, 843, 203, 276, 564,
1334 -1, 564, 328, 1370, 328, 375, 328, 158, 1490, 564,
1335 57, 56, 236, 1518, 1206, 1535, 56, -2, 1458, 1385,
1336 277, 328, 328, -126, 450, 453, 1388, 93, 102, 1469,
1337 484, 155, 151, 151, 151, 136, 162, 737, 233, 597,
1338 197, 198, 57, 1108, 448, 1464, 14, 57, 159, 87,
1339 385, 328, 662, 328, 383, 106, 236, 1487, 573, 877,
1340 1519, 1477, 1536, 151, 153, 153, 153, 410, 202, 21,
1341 598, 599, 71, 927, 475, 58, 451, 202, 24, 54,
1342 573, 845, 484, 394, 397, 172, 773, 1490, 1514, 275,
1343 1480, 1207, 1522, 100, 1109, 153, 240, 71, 655, 760,
1344 996, 1513, 114, 206, 759, 1537, 467, 468, 1478, 878,
1345 384, 206, 428, 430, 90, 1445, 172, 45, 92, 342,
1346 1175, 928, 649, 650, 929, -327, 759, 686, 1454, 411,
1347 203, 999, 933, 238, 91, 56, 1004, 906, 203, 203,
1348 288, 57, -551, 215, 955, 917, 498, 499, -327, 45,
1349 -551, 1491, 411, 469, 45, 134, 27, 238, 88, 930,
1350 85, 507, 412, 1504, 508, 203, 57, 509, 1475, 190,
1351 519, 774, 991, 1508, 524, 956, 561, 1347, 89, 1193,
1352 934, 425, 563, 935, 569, 412, 238, 373, -551, 171,
1353 1521, 886, 226, 885, 600, 238, -551, 440, 568, 1219,
1354 966, 479, 365, 429, 431, 435, 1172, 887, 628, 1532,
1355 86, 594, 881, 1516, 1350, 203, 395, 398, 936, 700,
1356 473, 1081, 992, 328, 392, 126, 127, 426, 643, 1194,
1357 920, 940, 1549, 627, 967, 738, 276, 1350, 968, 238,
1358 927, 240, 1061, 90, 226, 107, 15, 16, 382, 1220,
1359 646, -386, 328, 603, 8, 477, 108, 602, 277, 204,
1360 205, 194, 202, 91, 1351, 1543, 474, 203, 843, 450,
1361 453, 969, 238, 45, 156, 71, 27, 450, 129, 130,
1362 -386, 137, 590, 585, -386, 126, 127, 1425, 928, 453,
1363 136, 929, 821, -791, 417, 640, 238, 456, 458, 191,
1364 749, 138, 822, 703, 843, 631, 1359, 129, 130, 453,
1365 471, 418, 851, 384, 467, 1544, 823, 642, 151, 151,
1366 151, 451, 202, 1084, 203, 467, 930, 275, 591, 451,
1367 -386, 478, 438, 439, 573, 864, 126, 127, 129, 130,
1368 419, 679, 163, 843, 57, 1264, 750, 756, 240, 1132,
1369 153, 153, 153, 668, 1068, 831, 1063, 1071, 852, 853,
1370 206, 1136, 478, 642, 833, 1402, 835, 15, 16, 690,
1371 691, 507, 508, 1137, 1404, 1405, 206, 58, -276, 506,
1372 759, 730, 157, 203, 203, 87, 639, 238, 990, 129,
1373 130, 203, 1321, 1095, 1096, 520, 1157, 521, 1159, 71,
1374 747, 832, 723, 203, 87, 328, 165, 90, 328, 944,
1375 834, 328, 836, 232, 561, 328, 765, 765, 765, 765,
1376 970, 729, 88, 203, -276, -276, 958, 91, 328, 619,
1377 -124, 643, 639, 90, 644, 446, 447, 731, 328, 1100,
1378 -269, 328, 89, 715, 238, 951, 748, 953, 641, 126,
1379 127, 601, 957, 91, 13, 945, 688, 137, 689, 1102,
1380 429, 431, 435, 1104, 817, -127, 971, 1368, 57, 866,
1381 169, 699, 959, 328, 276, 90, 594, 126, 127, 136,
1382 202, 818, 475, -125, -336, 1101, 15, 16, 1106, 1495,
1383 170, 1012, 640, 573, 19, 91, 277, 126, 127, 679,
1384 27, 843, 129, 130, 893, 1103, 898, 899, 223, 1105,
1385 819, 837, 839, 238, 642, 194, 574, 202, -336, 484,
1386 221, 642, -336, 355, 843, 450, 575, 527, 27, 367,
1387 129, 130, 121, 94, 109, 110, 576, 137, 704, 577,
1388 578, 238, 203, 89, 821, -591, 899, 1180, 27, 1438,
1389 129, 130, 695, 191, 822, -336, 202, 226, 1190, 1191,
1390 701, 356, 918, 1492, 485, 275, 597, 279, 823, 115,
1391 116, 117, 339, 39, 486, 964, 965, 451, 523, 203,
1392 467, 91, 341, 639, 993, 917, 354, 111, 112, 817,
1393 639, -591, -591, 350, 520, 1439, 521, 976, 640, 1000,
1394 1001, 1002, 240, 358, 782, 39, 818, -591, 194, 1493,
1395 39, 1366, 359, 715, 467, 379, 197, 198, 203, -269,
1396 642, 27, 14, 118, 119, 238, 1176, 1177, 357, 1179,
1397 400, 7, 8, 230, 10, 819, 1171, 171, 58, 203,
1398 58, 238, 730, 760, 730, 21, 191, 58, 136, 8,
1399 9, 730, 8, 9, 24, 401, 640, 328, 328, 328,
1400 71, 640, 71, 723, 1376, 352, 1381, 1229, 1230, 71,
1401 22, 353, 723, 150, 126, 127, 283, 231, 642, 475,
1402 -586, 1250, 729, 642, 729, 28, 29, 1045, -7, 639,
1403 729, 729, 1127, 1128, 1129, 8, 9, 421, 731, 1460,
1404 731, 409, 129, 130, 203, 129, 130, 731, 884, 232,
1405 422, 909, 705, 706, 507, 508, 465, 33, 688, 689,
1406 901, 699, 548, 549, 88, 27, 232, 129, 130, 57,
1407 765, 57, 1138, 1481, 1039, 1152, 1153, 1154, 57, 1348,
1408 1349, 485, 126, 1247, 89, 782, 480, 639, 129, 130,
1409 481, 486, 639, 1037, 438, 1419, 910, -44, 981, -278,
1410 483, 765, -44, 27, 482, 911, 912, 640, 236, 491,
1411 1320, 679, 478, -44, -337, 500, 15, 16, 151, 1326,
1412 1327, 501, 1328, 1009, 1010, 1011, 396, 399, 502, 642,
1413 503, 837, 839, 642, 504, 129, 130, 280, 368, 369,
1414 10, 640, 913, 765, 328, -278, -278, 640, -337, 564,
1415 153, 631, -337, 446, 1420, 523, 150, 151, 608, 478,
1416 610, -272, 611, 642, 1140, 438, 1424, 1085, 1086, 642,
1417 1142, 1143, 613, 614, 1140, 1145, 22, 615, 1143, 88,
1418 626, 467, 467, 975, 985, -337, 679, 1322, -6, 153,
1419 653, 28, 298, -102, 236, 15, 16, 656, 639, 89,
1420 765, 88, 639, 673, 692, 90, 739, 328, 642, 1353,
1421 467, 395, 398, 1354, 640, 240, 696, -100, 742, 15,
1422 16, 89, 743, 33, 744, 91, 640, -102, 751, 752,
1423 769, -102, 639, 771, 395, 398, 642, 772, 639, 662,
1424 7, 8, 9, 10, 829, 774, 1181, 760, 642, 58,
1425 830, -100, 844, 730, 238, -100, 238, 846, 429, 431,
1426 435, 640, 848, 640, -102, 869, 1407, 870, 1429, 1430,
1427 879, 71, 1150, 880, 723, 21, 882, 639, 1417, 22,
1428 126, 127, 233, 642, 888, 642, 889, 516, -100, 902,
1429 907, 238, 27, 729, 28, 29, 619, -272, 174, 435,
1430 1165, 1168, 236, 411, 884, 639, 924, 925, 175, 731,
1431 507, 508, 926, 151, 151, 151, 932, 639, 176, -790,
1432 942, 643, 126, 127, 1462, 946, 33, 115, 705, 706,
1433 947, 177, 949, 129, 130, 1407, 151, 151, 151, 952,
1434 57, 954, 918, 994, 640, 153, 153, 153, 126, 127,
1435 1018, 1013, 639, 1014, 639, 708, 467, 467, 1015, 467,
1436 467, 1016, 467, 128, 1196, 1197, 642, 679, 153, 153,
1437 153, 1017, 1485, 27, 1407, 129, 130, 238, 1019, 27,
1438 1020, 118, 119, 1168, 1021, 1022, -123, 1196, 1197, 642,
1439 664, 1025, 1215, 1217, 760, 694, 1023, 1221, 1222, 27,
1440 1026, 129, 130, 58, 1028, 1407, 702, 730, 1029, 1030,
1441 1031, 1032, 396, 399, 94, 95, 96, 1033, 207, 208,
1442 209, 1034, 1044, 1046, 1047, 71, 1048, 1054, 723, 360,
1443 361, 362, 1324, 1325, 1056, 639, 1055, 1099, 1062, 1260,
1444 1064, 1065, 1067, 479, 1074, 1167, 1077, 729, 210, 1080,
1445 467, 467, 1117, 688, 689, 429, 431, 435, 639, 1124,
1446 238, 699, 1141, 731, 1303, 1146, 27, 1151, 97, 98,
1447 211, 1155, 516, 1160, 765, 516, 1161, 1162, 429, 431,
1448 435, 27, 1163, 363, 364, 238, 71, 1169, 1178, 1297,
1449 1173, 396, 770, 1182, 57, 1174, 1183, 519, 1315, 360,
1450 361, 362, 1184, 1298, 1189, 516, 1185, 1188, 1375, 1243,
1451 1375, 545, 546, 547, 548, 549, 212, 213, 214, 194,
1452 202, 115, 116, 117, 1302, 344, 348, 1167, 1457, 1192,
1453 1195, 1200, 7, 126, 127, 10, 418, 1342, 238, 1214,
1454 467, 467, 467, 1224, 484, 395, 398, 1225, 1228, 1232,
1455 126, 127, 1303, 363, 364, 57, 1254, 191, 1255, 1303,
1456 94, 109, 110, 859, 688, 689, 1303, 699, 448, 1262,
1457 1265, 22, 1266, 1270, 71, 118, 119, 1297, 231, 1271,
1458 1272, 71, 203, 1273, 1297, 1206, 28, 29, 71, 1313,
1459 1337, 1297, 1362, 1338, 573, 1352, 1361, 1339, 1298, 1340,
1460 1345, 27, 1363, 129, 130, 1298, 151, 1343, 467, 467,
1461 232, 1371, 1302, 1373, 111, 112, 1401, 574, 33, 1302,
1462 1386, 507, 508, 1414, 1409, 1276, 1302, 575, 347, 349,
1463 592, 8, 9, 1410, 1416, 1431, 1418, 576, 153, 1433,
1464 577, 578, 1436, 57, 1455, 1443, 1471, 151, 151, 151,
1465 57, 1499, 1503, 1472, 1483, 1484, 1510, 57, 1473, 1486,
1466 1517, 950, 1497, 1520, 1303, 1450, 288, 593, 1303, 22,
1467 1523, 94, 109, 110, 1524, 207, 208, 209, 328, 153,
1468 153, 153, 27, 1526, 129, 130, 71, 277, 1534, 1297,
1469 71, 640, 1529, 1297, 1450, 995, 1539, 1303, 690, 691,
1470 1541, 1546, 1542, 1547, 1551, 210, 658, 1298, 1303, 94,
1471 95, 96, 1367, 642, 467, 1552, 277, 1, 5, 71,
1472 625, 1303, 1297, 407, 1302, 111, 112, 514, 1302, 203,
1473 71, 1082, 1459, 1297, 408, 986, 1298, 962, 859, 94,
1474 109, 110, 1201, 71, 338, 388, 1297, 1298, 435, 1441,
1475 1450, 1548, 490, 1303, 1378, 57, 275, 1302, 923, 57,
1476 1298, 27, 1075, 97, 98, 99, 1076, 1403, 1302, 15,
1477 16, 1226, 277, 460, -386, 71, 1130, 1148, 1297, 963,
1478 988, 1302, 639, 1249, 872, 275, 1073, 816, 57, 429,
1479 431, 435, 1298, 111, 112, 113, 79, 441, -547, 57,
1480 1303, -547, -386, -386, 366, 1384, 103, -386, 1538, 570,
1481 1312, 1482, 57, 1302, 94, 95, 96, 132, 7, 8,
1482 9, 10, 71, 141, 141, 1297, 141, 1476, 79, 1505,
1483 518, 1528, 637, 79, 396, 770, 1530, 848, 1116, 1298,
1484 0, 275, 672, 1314, 57, 0, 185, 0, 79, -547,
1485 0, -547, -547, 0, -547, 0, 218, 22, 0, 0,
1486 1302, 0, 0, 103, 0, -547, 0, -547, 97, 98,
1487 27, 150, 28, 29, 242, 103, 1374, 0, 637, 0,
1488 0, 0, 0, -547, -547, 239, 175, -547, 115, 705,
1489 706, 57, 0, 126, 127, 0, 176, 103, 225, -547,
1490 0, 669, 636, 0, 33, 0, 0, 0, 669, 177,
1491 1114, 0, 514, 0, 0, 514, 0, 0, 0, 762,
1492 132, 0, 1133, 1134, 0, 132, 0, 79, 0, 0,
1493 0, 141, 514, 0, 390, 141, 0, 573, 141, 141,
1494 141, 0, 118, 119, 27, 514, 129, 130, 678, 789,
1495 0, 1147, 79, 0, 0, 0, 0, 0, 402, 0,
1496 574, 0, 94, 109, 110, 470, 0, 185, 185, 185,
1497 575, 0, 0, 669, 0, 811, 0, 427, 0, 0,
1498 576, 828, 0, 577, 578, 0, 0, 0, 0, 0,
1499 443, 0, 0, 0, 0, 0, 185, 0, 126, 127,
1500 0, 22, 0, 475, 0, 670, 0, 280, 368, 369,
1501 10, 459, 677, 0, 0, 758, 111, 112, 761, 103,
1502 0, 0, 763, 764, 766, 767, 768, 0, 0, 637,
1503 0, 141, 0, 0, 0, 518, 637, 669, 0, 669,
1504 669, 0, 573, 0, 0, 0, 22, 0, 785, 27,
1505 0, 129, 130, 0, 0, 0, -278, 0, 0, 27,
1506 0, 28, 298, 0, 0, 574, 669, 396, 399, 103,
1507 487, -278, -278, 669, 0, 575, -278, 757, 0, 0,
1508 814, 0, 0, 0, 0, 576, 0, 550, 577, 578,
1509 396, 1213, -278, 33, 0, 0, 0, 1235, 1236, 841,
1510 1245, 1246, 0, 1248, -278, -278, 841, -278, 0, -278,
1511 0, 0, 0, 103, 0, 0, 0, 571, 0, 487,
1512 487, 587, 0, 0, 0, 0, 551, 552, 0, 0,
1513 79, 553, 554, 555, 556, 637, 0, 0, -278, -278,
1514 0, 810, -278, 812, 813, 132, 94, 109, 110, 0,
1515 616, 617, 618, 0, -278, 8, 9, 0, 381, 12,
1516 13, 0, 0, 675, 0, 14, 132, 0, 0, 0,
1517 0, 0, 103, 0, 0, 185, 103, 863, 0, 0,
1518 17, 0, 18, 19, 0, 0, 141, 0, 21, 141,
1519 0, 1318, 1319, 637, 141, 0, 0, 24, 637, 0,
1520 111, 112, 0, 0, 0, 636, 27, 0, 129, 130,
1521 0, 0, 0, 0, 196, 197, 198, 0, 0, 0,
1522 185, 14, 185, 0, 185, 185, 185, 0, 0, 0,
1523 185, 0, 115, 705, 706, 185, 707, 0, 185, 19,
1524 693, 669, 1042, 0, 21, 698, 8, 9, 0, 676,
1525 12, 13, 0, 24, 79, 0, 14, 0, 0, 0,
1526 708, 0, 0, 678, 0, 0, 0, 709, 678, 0,
1527 0, 17, 740, 18, 0, 514, 0, 745, 0, 21,
1528 0, 1393, 1394, 1395, 27, 0, 118, 119, 24, 753,
1529 754, 0, 755, 103, 103, 103, 103, 27, 0, 129,
1530 130, 669, 0, 0, 637, 0, 0, 0, 637, 0,
1531 0, 0, 0, 0, 669, 0, 669, 0, 669, 536,
1532 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
1533 547, 548, 549, 196, 197, 198, 815, 1035, 637, 0,
1534 14, 0, 0, 0, 637, 0, 0, 0, 0, 1427,
1535 1428, 103, 0, 487, 0, 0, 0, 0, 19, 1114,
1536 0, 669, 0, 21, 571, 0, 487, 487, 785, 587,
1537 0, 1125, 24, 0, 678, 0, 860, 0, 841, 0,
1538 862, 0, 0, 637, 849, 850, 0, 647, 0, 849,
1539 0, 0, 0, 0, 185, 669, 449, 197, 198, 0,
1540 0, 396, 1213, 14, 0, 1038, 0, 0, 636, 0,
1541 1083, 637, 0, 669, 841, 0, 0, 0, 1049, 0,
1542 1050, 19, 1051, 637, 0, 0, 21, 0, 0, 185,
1543 897, 185, 185, 218, 587, 24, 0, 8, 9, 0,
1544 0, 12, 13, 0, 0, 0, 0, 14, 7, 126,
1545 127, 10, 0, 841, 13, 1515, 0, 0, 637, 0,
1546 637, 0, 17, 0, 18, 1079, 0, 1119, 0, 0,
1547 21, 185, 0, 0, 1126, 897, 0, 0, 0, 24,
1548 0, 678, 185, 185, 0, 185, 0, 22, 27, 0,
1549 129, 130, 557, 678, 0, 0, 0, 0, 0, 1097,
1550 27, 0, 28, 29, 543, 544, 545, 546, 547, 548,
1551 549, 0, 132, 0, 0, 79, 31, 79, 0, 0,
1552 0, 0, 983, 79, 79, 0, 32, 558, 678, 0,
1553 678, 514, 0, 103, 33, 0, 0, 0, 103, 34,
1554 0, 637, 0, 0, 0, 487, 487, 487, 0, 0,
1555 0, 1005, 0, 1007, 0, 0, 0, 487, 0, 582,
1556 586, 589, 0, 0, 637, 7, 8, 9, 10, 187,
1557 12, 188, 0, 0, 0, 0, 14, 0, 0, 1256,
1558 1257, 1258, 1259, 669, 0, 669, 0, 669, 0, 0,
1559 1263, 17, 0, 18, 19, 0, 0, 0, 0, 21,
1560 0, 0, 0, 0, 22, 0, 0, 103, 24, 0,
1561 0, 841, 0, 0, 0, 0, 0, 27, 0, 28,
1562 29, 0, 0, 189, 0, 1040, 1041, 0, 1043, 487,
1563 0, 487, 0, 31, 841, 0, 0, 0, 103, 0,
1564 0, 0, 487, 32, 103, 0, 860, 860, 860, 82,
1565 0, 33, 0, 1066, 0, 1060, 34, 0, 0, 105,
1566 541, 542, 543, 544, 545, 546, 547, 548, 549, 125,
1567 133, 0, 0, 0, 0, 669, 142, 142, 103, 142,
1568 103, 82, 185, 185, 1091, 0, 82, 1202, 0, 1203,
1569 0, 1204, 972, 973, 9, 10, 0, 0, 1093, 142,
1570 0, 82, 0, 0, 7, 126, 127, 10, 0, 219,
1571 225, 1365, 0, 0, 0, 0, 227, 0, 0, 0,
1572 0, 0, 0, 1091, 0, 0, 0, 0, 227, 0,
1573 0, 22, 0, 0, 0, 0, 0, 103, 0, 0,
1574 0, 1119, 0, 22, 27, 0, 28, 29, 0, 0,
1575 0, 103, 974, 0, 0, 0, 27, 0, 28, 29,
1576 175, 0, 1131, 103, 0, 0, 0, 0, 0, 0,
1577 176, 0, 31, 374, 1135, 0, 1144, 0, 33, 1269,
1578 82, 0, 32, 177, 142, 1415, 79, 0, 142, 0,
1579 33, 142, 142, 142, 0, 34, 0, 0, 103, 0,
1580 103, 0, 0, 948, 0, 82, 838, 840, 0, 0,
1581 0, 0, 0, 8, 9, 0, 187, 12, 188, 0,
1582 142, 142, 142, 14, 0, 0, 0, 0, 789, 1448,
1583 0, 0, 487, 487, 0, 487, 0, 0, 17, 0,
1584 18, 19, 514, 0, 0, 998, 21, 0, 0, 142,
1585 1003, 579, 579, 579, 0, 24, 0, 0, 1448, 1186,
1586 0, 0, 669, 0, 27, 0, 129, 130, 0, 895,
1587 0, 582, 586, 0, 589, 0, 0, 185, 185, 185,
1588 185, 1091, 0, 0, 142, 185, 0, 0, 637, 7,
1589 8, 9, 10, 0, 0, 13, 1199, 0, 0, 0,
1590 0, 0, 1091, 1091, 1091, 0, 0, 0, 0, 0,
1591 0, 586, 1509, 0, 1448, 0, 0, 196, 197, 198,
1592 0, 0, 227, 142, 14, 0, 0, 0, 22, 0,
1593 0, 0, 0, 185, 573, 0, 1527, 0, 141, 0,
1594 79, 27, 19, 28, 29, 518, 0, 21, 0, 0,
1595 789, 0, 1057, 0, 1058, 1252, 24, 890, 636, 1253,
1596 0, 0, 7, 8, 9, 10, 227, 891, 225, 0,
1597 572, 867, 142, 142, 588, 33, 0, 576, 0, 596,
1598 892, 578, 0, 82, 0, 0, 0, 0, 185, 185,
1599 0, 185, 1268, 0, 0, 0, 0, 586, 374, 0,
1600 0, 22, 0, 0, 0, 0, 0, 573, 0, 0,
1601 0, 103, 0, 0, 27, 0, 28, 29, 0, 0,
1602 0, 0, 0, 0, 0, 227, 0, 0, 142, 227,
1603 890, 0, 1316, 0, 0, 0, 1317, 0, 0, 142,
1604 891, 0, 142, 0, 0, 0, 0, 142, 33, 0,
1605 576, 0, 0, 892, 578, 0, 0, 0, 1335, 1336,
1606 0, 0, 0, 565, 0, 280, 368, 369, 10, 1052,
1607 566, 1053, 0, 142, 0, 142, 0, 142, 142, 142,
1608 0, 0, 1059, 142, 0, 0, 838, 840, 142, 0,
1609 0, 142, 0, 185, 897, 185, 0, 0, 579, 579,
1610 0, 579, 0, 0, 22, 0, 717, 82, 858, 0,
1611 1156, 231, 1158, 0, 0, 0, 0, 27, 0, 28,
1612 298, 0, 838, 840, 0, 0, 0, 0, 0, 0,
1613 0, 0, 0, 0, 0, 280, 368, 369, 10, 7,
1614 8, 9, 10, 196, 197, 198, 227, 227, 227, 227,
1615 14, 567, 0, 0, 0, 0, 7, 8, 9, 10,
1616 0, 579, 0, 579, 579, 1187, 579, 0, 19, 0,
1617 0, 0, 1091, 21, 22, 0, 0, 0, 22, 0,
1618 0, 231, 24, 0, 573, 0, 0, 0, 0, 28,
1619 298, 27, 0, 28, 29, 22, 0, 0, 0, 0,
1620 0, 0, 231, 579, 227, 0, 142, 890, 0, 0,
1621 28, 29, 0, 1091, 1091, 1091, 0, 891, 0, 142,
1622 142, 33, 588, 0, 0, 33, 0, 576, 103, 861,
1623 892, 578, 0, 0, 232, 0, 1227, 0, 0, 0,
1624 1231, 596, 33, 185, 0, 0, 0, 142, 0, 0,
1625 0, 0, 0, 7, 8, 9, 10, 0, 0, 13,
1626 280, 8, 9, 10, 0, 0, 0, 0, 0, 0,
1627 0, 0, 0, 0, 125, 0, 0, 0, 0, 0,
1628 0, 0, 142, 588, 142, 142, 219, 588, 0, 579,
1629 0, 1267, 22, 0, 0, 0, 0, 0, 573, 22,
1630 0, 0, 0, 0, 717, 27, 231, 28, 29, 0,
1631 0, 0, 0, 0, 28, 298, 0, 1052, 1053, 838,
1632 840, 1087, 0, 0, 142, 1059, 0, 0, 588, 0,
1633 0, 1088, 0, 0, 0, 142, 142, 0, 142, 33,
1634 0, 576, 838, 840, 1089, 578, 33, 0, 0, 0,
1635 0, 280, 126, 127, 10, 0, 0, 1333, 1334, 0,
1636 0, 579, 0, 579, 0, 133, 0, 0, 82, 0,
1637 82, 0, 0, 1344, 579, 984, 82, 82, 858, 858,
1638 858, 7, 8, 9, 10, 0, 227, 475, 0, 0,
1639 22, 227, 0, 280, 8, 9, 10, 231, 142, 142,
1640 142, 0, 0, 0, 0, 28, 298, 0, 0, 0,
1641 142, 0, 0, 0, 579, 579, 579, 0, 0, 0,
1642 22, 1389, 1390, 0, 0, 0, 573, 0, 1052, 1053,
1643 0, 1059, 22, 27, 0, 28, 29, 33, 0, 231,
1644 1399, 1400, 0, 0, 0, 0, 0, 28, 298, 890,
1645 0, 0, 0, 0, 0, 858, 0, 0, 0, 891,
1646 227, 0, 0, 0, 0, 0, 0, 33, 0, 576,
1647 0, 232, 892, 578, 0, 280, 8, 9, 10, 33,
1648 0, 0, 142, 0, 142, 0, 0, 0, 0, 0,
1649 0, 227, 0, 0, 0, 142, 0, 227, 0, 861,
1650 861, 861, 0, 0, 0, 0, 596, 0, 0, 0,
1651 0, 0, 0, 0, 22, 0, 0, 0, 0, 0,
1652 0, 231, 0, 0, 0, 0, 0, 0, 50, 28,
1653 298, 227, 0, 227, 0, 142, 142, 588, 718, 0,
1654 7, 8, 719, 10, 381, 12, 13, 0, 0, 0,
1655 0, 14, 0, 478, 0, 50, 50, 0, 149, 0,
1656 50, 33, 0, 0, 0, 50, 17, 0, 18, 19,
1657 20, 0, 0, 0, 21, -495, 861, 0, 50, 22,
1658 50, 0, 0, 24, 720, 0, 630, 0, 0, 0,
1659 227, 0, 27, 0, 28, 29, 0, 0, 721, 0,
1660 722, 0, 717, 234, 227, 0, 0, 0, 31, 579,
1661 579, 579, 579, 579, 0, 0, 227, 579, 32, 0,
1662 0, 0, 0, 0, 0, 0, 33, 7, 126, 127,
1663 10, 34, 0, 13, 858, 858, 858, 0, 0, 82,
1664 0, 0, 0, 0, 0, 0, 0, 0, -495, 0,
1665 0, 227, 371, 227, 0, 0, 371, 371, 0, 50,
1666 0, 0, 0, 50, 0, 234, 22, 50, 0, 0,
1667 149, 149, 149, 0, 0, 0, 0, 0, 0, 27,
1668 0, 28, 29, 0, 50, 142, 142, 0, 142, 0,
1669 0, 0, 0, 0, 0, 146, 0, 0, 0, 50,
1670 50, 149, 0, 0, 0, 147, 0, 0, 0, 234,
1671 0, 0, 0, 33, 7, 8, 9, 10, 148, 0,
1672 579, 579, 0, 579, 0, 0, 0, 0, 50, 0,
1673 142, 142, 142, 142, 588, 0, 0, 0, 142, 0,
1674 0, 0, 0, 0, 717, 0, 0, 0, 0, 0,
1675 0, 0, 0, 22, 0, 861, 861, 861, 0, 573,
1676 0, 0, 0, 50, 0, 0, 27, 0, 28, 29,
1677 0, 0, 717, 0, 0, 0, 0, 0, 0, 0,
1678 0, 0, 890, 0, 0, 0, 142, 0, 0, 0,
1679 0, 142, 891, 82, 0, 0, 0, 0, 0, 0,
1680 33, 0, 576, 0, 0, 892, 578, 0, 0, 0,
1681 0, 0, 0, 0, 0, 0, 0, 7, 8, 9,
1682 10, 0, 718, 13, 7, 8, 719, 10, 381, 12,
1683 13, 0, 515, 0, 0, 14, 0, 0, 0, 0,
1684 0, 142, 142, 0, 142, 0, 0, 0, 0, 371,
1685 17, 0, 18, 19, 20, 0, 22, 234, 21, -496,
1686 0, 0, 50, 22, 227, 0, 0, 24, 720, 27,
1687 630, 28, 29, 0, 0, 0, 27, 371, 28, 29,
1688 0, 0, 721, 0, 722, 175, 8, 9, 0, 381,
1689 12, 13, 31, 0, 675, 176, 14, 0, 371, 0,
1690 0, 0, 32, 33, 0, 0, 0, 50, 177, 0,
1691 33, 17, 0, 18, 19, 34, 0, 0, 50, 21,
1692 0, 50, 0, 0, 0, 0, 50, 0, 24, 0,
1693 573, 0, -496, 0, 0, 0, 0, 27, 0, 129,
1694 130, 0, 0, 0, 0, 0, 142, 588, 142, 0,
1695 0, 0, 50, 574, 50, 0, 149, 149, 149, 0,
1696 0, 0, 50, 575, 0, 0, 0, 50, 0, 0,
1697 50, 77, 0, 576, 0, 0, 577, 578, 0, 0,
1698 676, 0, 0, 0, 0, 0, 50, 0, 0, 0,
1699 0, 0, 0, 0, 7, 126, 127, 10, 77, 77,
1700 475, 77, 0, 77, 0, 8, 9, 0, 77, 12,
1701 225, 0, 0, 0, 0, 14, 0, 515, 0, 0,
1702 515, 77, 0, 77, 0, 861, 0, 0, 0, 0,
1703 17, 0, 18, 22, 0, 515, 515, 515, 21, 0,
1704 0, 0, 0, 0, 0, 0, 27, 24, 28, 29,
1705 515, 0, 0, 0, 0, 0, 27, 0, 129, 130,
1706 0, 0, 31, 0, 0, 0, 861, 861, 861, 0,
1707 0, 0, 32, 0, 0, 0, 0, 0, 8, 9,
1708 33, 227, 12, 225, 0, 34, 0, 0, 14, 0,
1709 0, 0, 0, 0, 0, 234, 142, 0, 7, 8,
1710 9, 10, 77, 17, 225, 18, 77, 0, 515, 0,
1711 77, 21, 0, 77, 77, 77, 0, 0, 0, 0,
1712 24, 0, 573, 0, 0, 0, 50, 77, 0, 27,
1713 0, 129, 130, 0, 0, 0, 0, 22, 0, 0,
1714 0, 0, 77, 77, 77, 574, 0, 0, 0, 0,
1715 27, 0, 28, 29, 0, 575, 0, 0, 0, 0,
1716 0, 50, 50, 50, 50, 576, 175, 0, 577, 578,
1717 0, 77, 0, 0, 0, 0, 176, 0, 0, 0,
1718 0, 0, 0, 0, 33, 0, 0, 0, 718, 177,
1719 7, 8, 719, 10, 381, 12, 13, 0, 0, 0,
1720 0, 14, 0, 50, 0, 0, 77, 50, 0, 0,
1721 0, 0, 0, 0, 50, 50, 17, 50, 18, 19,
1722 20, 0, 0, 0, 21, -498, 0, 0, 0, 22,
1723 0, 0, 0, 24, 720, 0, 630, 0, 0, 0,
1724 0, 0, 27, 0, 28, 29, 0, 50, 721, 50,
1725 722, 0, 0, 0, 50, 50, 50, 0, 31, 0,
1726 0, 7, 8, 9, 10, 381, 12, 13, 32, 0,
1727 675, 0, 14, 0, 0, 0, 33, 0, 0, 0,
1728 0, 34, 0, 515, 0, 0, 0, 17, 0, 18,
1729 19, 0, 0, 0, 0, 21, 0, 0, -498, 0,
1730 22, 595, 0, 0, 24, 77, 573, 0, 0, 0,
1731 0, 0, 0, 27, 0, 28, 29, 0, 0, 0,
1732 0, 126, 127, 0, 0, 197, 198, 0, 0, 1087,
1733 0, 14, 0, 0, 0, 0, 318, 0, 318, 1088,
1734 318, 0, 0, 0, 0, 0, 0, 33, 0, 576,
1735 77, 0, 1089, 578, 21, 0, 676, 0, 0, 0,
1736 0, 77, 0, 24, 77, 573, 0, 0, 0, 77,
1737 0, 0, 27, 0, 129, 130, 0, 0, 515, 515,
1738 515, 1411, 0, 0, 234, 318, 0, 318, 574, 0,
1739 0, 0, 0, 0, 0, 77, 0, 77, 575, 77,
1740 77, 77, 0, 0, 0, 77, 0, 0, 576, 0,
1741 77, 584, 578, 77, 50, 50, 149, 0, 0, 0,
1742 0, 234, 0, 0, 0, 0, 0, 0, 0, 77,
1743 0, 0, 1412, 528, 529, 530, 531, 532, 533, 534,
1744 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
1745 545, 546, 547, 548, 549, 1113, 0, 0, 0, 0,
1746 0, 0, 0, 1382, 0, 1280, 1281, 1282, 10, 381,
1747 12, 281, 282, 283, 0, 284, 14, 1283, 0, 1284,
1748 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 15,
1749 16, 17, 285, 18, 19, 20, 0, 286, 287, 21,
1750 0, 288, 289, 290, 22, 291, 292, 234, 24, 0,
1751 0, 0, 293, 294, 295, 296, 297, 27, 50, 1294,
1752 298, 662, 0, 1295, 299, 0, 0, 0, 0, 0,
1753 300, 0, 0, 301, 0, 0, 0, 0, 0, 595,
1754 0, 302, 303, 304, 0, 0, 0, 0, 505, 305,
1755 306, 307, 0, 0, 0, 0, 308, 0, 1296, 0,
73b0fce8 1756 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
cf776105
JM
1757 0, 0, 0, 1383, 309, 7, 8, 9, 10, 0,
1758 0, 13, 0, 0, 0, 0, 318, 0, 0, 0,
1759 234, 8, 9, 0, 381, 12, 13, 0, 0, 1461,
1760 154, 14, 0, 0, 77, 77, 77, 77, 0, 50,
1761 50, 149, 149, 149, 22, 234, 17, 50, 18, 19,
1762 186, 0, 0, 0, 21, 0, 0, 27, 0, 28,
1763 29, 0, 0, 24, 1113, 1113, 1113, 0, 0, 0,
1764 0, 0, 27, 432, 129, 130, 77, 0, 0, 0,
1765 77, 0, 0, 433, 0, 0, 0, 77, 77, 0,
1766 77, 33, 0, 0, 0, 50, 434, 667, 671, 0,
1767 50, 0, 50, 0, 6, 671, 7, 8, 9, 10,
1768 11, 12, 13, 0, 8, 9, 0, 14, 12, 13,
1769 77, 0, 77, 0, 14, 0, 0, 77, 77, 77,
1770 0, 0, 17, 0, 18, 19, 0, 0, 0, 17,
1771 21, 18, 154, 154, 154, 22, 0, 21, 0, 24,
1772 50, 50, 406, 50, 0, 0, 24, 0, 27, 0,
1773 28, 29, 0, 0, 30, 27, 0, 129, 130, 318,
1774 671, 186, 186, 436, 31, 0, 0, 0, 0, 0,
1775 0, 0, 0, 0, 32, 0, 0, 0, 0, 0,
73b0fce8 1776 0, 0, 33, 0, 0, 0, 0, 34, 0, 0,
cf776105
JM
1777 186, 0, 318, 0, 667, 0, 0, 786, 787, 0,
1778 791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
1779 801, 802, 803, 804, 805, 806, 807, 808, 809, 0,
1780 0, 0, 0, 0, 671, 0, 671, 671, 533, 534,
1781 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
1782 545, 546, 547, 548, 549, 50, 50, 50, 595, 0,
1783 0, 0, 0, 671, 0, 0, 0, 0, 0, 0,
1784 671, 0, 0, 718, 488, 7, 8, 719, 10, 381,
1785 12, 13, 0, 0, 0, 0, 14, 77, 77, 77,
1786 874, 876, 0, 0, 0, 0, 0, 0, 0, 0,
1787 0, 17, 0, 18, 19, 20, 0, 0, 0, 21,
1788 -497, 0, 0, 0, 22, 0, 0, 0, 24, 720,
1789 0, 630, 0, 581, 581, 581, 0, 27, 1115, 28,
1790 29, 0, 0, 721, 1113, 722, 0, 0, 0, 0,
1791 0, 0, 0, 31, 0, 667, 0, 0, 0, 0,
1792 0, 0, 0, 32, 0, 0, 0, 7, 8, 9,
1793 10, 33, 0, 475, 126, 127, 34, 0, 197, 198,
1794 0, 0, 0, 0, 14, 1113, 1113, 1113, 0, 186,
1795 0, 0, 0, -497, 0, 0, 0, 0, 0, 0,
1796 0, 77, 0, 0, 0, 0, 22, 21, 0, 0,
1797 0, 960, 0, 0, 0, 50, 24, 0, 573, 27,
1798 0, 28, 29, 0, 0, 27, 0, 129, 130, 0,
1799 0, 318, 318, 318, 186, 175, 186, 0, 436, 436,
1800 436, 574, 0, 0, 186, 176, 0, 0, 671, 186,
1801 0, 575, 186, 33, 0, 0, 0, 0, 177, 0,
1802 0, 576, 0, 0, 577, 578, 0, 0, 0, 0,
1803 1024, 0, 0, 0, 1237, 1238, 9, 10, 0, 0,
1804 0, 0, 0, 1237, 126, 127, 10, 0, 0, 0,
1805 0, 0, 77, 77, 77, 77, 77, 0, 0, 0,
1806 77, 0, 0, 0, 0, 0, 0, 667, 671, 0,
1807 0, 0, 0, 22, 0, 0, 0, 1115, 1115, 1115,
1808 0, 671, 22, 671, 0, 671, 27, 0, 28, 29,
1809 0, 0, 0, 0, 1239, 27, 0, 28, 29, 0,
1810 0, 0, 175, 1239, 0, 0, 0, 0, 77, 0,
1811 0, 31, 176, 77, 0, 77, 0, 0, 1072, 0,
1812 33, 32, 0, 0, 0, 177, 0, 824, 671, 33,
1813 0, 0, 0, 0, 34, 0, 0, 0, 318, 0,
1814 581, 581, 0, 581, 7, 126, 127, 10, 0, 0,
1815 581, 1094, 0, 0, 0, 0, 0, 0, 0, 0,
1816 184, 0, 671, 77, 77, 0, 77, 0, 186, 0,
956d6950 1817 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
1818 671, 0, 0, 22, 0, 237, 0, 0, 241, 0,
1819 0, 0, 0, 0, 0, 0, 27, 0, 28, 29,
1820 0, 0, 0, 894, 0, 894, 894, 0, 581, 237,
1821 0, 343, 146, 0, 0, 0, 0, 0, 0, 0,
1822 0, 0, 147, 1139, 0, 0, 0, 0, 0, 0,
1823 33, 0, 0, 0, 0, 148, 0, 0, 0, 0,
1824 0, 0, 0, 0, 0, 894, 667, 0, 0, 0,
1825 0, 0, 0, 0, 0, 0, 186, 186, 0, 186,
1826 7, 8, 9, 10, 187, 12, 188, 0, 77, 77,
1827 77, 14, 0, 0, 667, 667, 0, 0, 1170, 0,
1828 0, 184, 184, 184, 0, 0, 17, 0, 18, 19,
1829 0, 442, 0, 0, 21, 0, 186, 75, 0, 22,
1830 0, 0, 0, 24, 0, 0, 7, 8, 9, 10,
1831 184, 0, 27, 0, 28, 29, 0, 0, 1377, 488,
1832 488, 488, 0, 0, 140, 144, 0, 0, 31, 75,
1833 0, 581, 0, 241, 75, 0, 0, 0, 32, 7,
1834 8, 9, 10, 0, 0, 22, 33, 1115, 237, 195,
1835 671, 34, 671, 0, 671, 0, 0, 667, 27, 0,
1836 28, 29, 0, 0, 0, 0, 667, 667, 0, 0,
1837 0, 667, 667, 0, 432, 0, 0, 0, 22, 0,
1838 0, 0, 0, 0, 433, 0, 1233, 1234, 1115, 1115,
1839 1115, 27, 33, 28, 29, 0, 0, 434, 0, 0,
1840 0, 0, 0, 581, 0, 581, 0, 175, 0, 0,
1841 0, 0, 0, 667, 0, 1261, 581, 176, 77, 0,
1842 581, 581, 581, 0, 0, 33, 0, 0, 386, 0,
1843 177, 0, 389, 0, 0, 0, 391, 0, 0, 237,
1844 241, 0, 671, 0, 0, 0, 0, 0, 0, 0,
1845 0, 0, 0, 75, 0, 0, 894, 894, 1092, 0,
1846 0, 0, 0, 0, 0, 0, 0, 0, 140, 144,
1847 0, 0, 667, 718, 0, 7, 8, 719, 10, 381,
1848 12, 13, 0, 0, 0, 0, 14, 0, 1323, 184,
1849 0, 0, 0, 0, 0, 0, 0, 1092, 0, 0,
1850 0, 17, 0, 18, 19, 101, 0, 0, 0, 21,
1851 0, 667, 0, 0, 22, 120, 101, 0, 24, 720,
1852 0, 630, 101, 101, 0, 101, 0, 27, 0, 28,
1853 29, 0, 476, 0, 184, 722, 184, 1360, 184, 184,
1854 184, 0, 0, 31, 184, 0, 0, 0, 0, 184,
1855 0, 0, 184, 32, 0, 217, 0, 0, 0, 8,
1856 9, 33, 381, 12, 13, 0, 34, 0, 0, 14,
1857 1391, 1392, 0, 0, 0, 0, 0, 0, 0, 1397,
1858 0, 0, 0, 0, 17, 0, 18, 19, 0, 0,
1859 667, 0, 21, 0, 0, 0, 0, 0, 0, 0,
1860 0, 629, 0, 0, 630, 0, 824, 824, 0, 824,
1861 27, 0, 129, 130, 120, 0, 120, 0, 0, 101,
1862 0, 0, 0, 101, 101, 0, 0, 0, 0, 671,
1863 101, 604, 101, 101, 101, 0, 0, 101, 101, 101,
956d6950 1864 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
1865 0, 894, 894, 1092, 1092, 1092, 0, 0, 0, 894,
1866 1452, 0, 0, 7, 8, 9, 10, 381, 12, 13,
1867 0, 0, 937, 0, 14, 0, 1092, 1092, 1092, 0,
1868 0, 0, 0, 0, 0, 0, 0, 651, 0, 17,
1869 652, 18, 19, 237, 241, 654, 0, 21, 0, 0,
1870 0, 0, 22, 0, 0, 0, 24, 186, 184, 457,
1871 101, 0, 0, 0, 0, 27, 0, 28, 29, 0,
1872 0, 389, 0, 391, 0, 0, 0, 0, 0, 0,
1873 101, 31, 0, 0, 0, 0, 476, 0, 0, 0,
1874 0, 32, 0, 184, 0, 184, 184, 0, 0, 33,
1875 0, 0, 0, 0, 34, 735, 0, 0, 0, 0,
1876 0, 0, 894, 894, 0, 894, 0, 0, 0, 101,
1877 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
1878 548, 549, 667, 0, 0, 184, 0, 0, 0, 0,
1879 0, 0, 0, 0, 0, 0, 184, 184, 0, 184,
1880 0, 0, 6, 0, 7, 8, 9, 10, 11, 12,
1881 13, 0, 0, 0, 0, 14, 101, 0, 101, 101,
1882 0, 0, 0, 241, 0, 0, 0, 0, 15, 16,
1883 17, 0, 18, 19, 20, 0, 184, 0, 21, 0,
1884 0, 0, 0, 22, 101, 0, 23, 24, 25, 0,
1885 26, 0, 0, 0, 0, 0, 27, 0, 28, 29,
1886 0, 0, 30, 0, 0, 101, 0, 186, 0, 186,
1887 0, 0, 31, 7, 8, 9, 10, 196, 197, 198,
1888 0, 101, 32, 0, 14, 101, 0, 0, 101, 0,
1889 33, 0, 0, 101, 0, 34, 0, 0, 0, 0,
1890 0, 35, 19, 0, 0, 0, 0, 21, 0, 0,
1891 0, 0, 22, 0, 0, 0, 24, 0, 573, 0,
1892 0, 0, 0, 0, 0, 27, 0, 28, 29, 0,
1893 0, 896, 0, 0, 0, 0, 0, 0, 0, 0,
1894 0, 890, 0, 0, 0, 0, 436, 0, 0, 0,
1895 101, 891, 710, 0, 0, 0, 0, 0, 0, 33,
1896 0, 576, 0, 0, 931, 578, 237, 241, 237, 0,
1897 0, 0, 0, 0, 0, 0, 938, 0, 101, 0,
1898 0, 0, 0, 651, 652, 0, 654, 436, 436, 436,
1899 0, 0, 0, 0, 0, 0, 184, 184, 1090, 0,
1900 0, 0, 0, 237, 0, 0, 0, 0, 0, 0,
1901 0, 0, 0, 0, 0, 0, 735, 186, 735, 0,
1902 0, 0, 0, 982, 989, 735, 0, 0, 0, 0,
1903 0, 0, 0, 0, 0, 0, 0, 1090, 0, 0,
1904 528, 529, 530, 531, 532, 533, 534, 535, 536, 537,
1905 538, 539, 101, 541, 542, 543, 544, 545, 546, 547,
1906 548, 549, 101, 101, 0, 101, 101, 0, 0, 0,
1907 0, 0, 0, 0, 788, 0, 280, 8, 9, 10,
1908 0, 12, 492, 282, 283, 0, 284, 14, 0, 442,
861bb6c1 1909 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
1910 0, 0, 17, 285, 18, 0, 20, 0, 286, 287,
1911 21, 0, 288, 289, 290, 22, 291, 292, 0, 24,
1912 120, 0, 0, 293, 294, 295, 296, 297, 27, 0,
1913 28, 298, 217, 0, 0, 299, -748, 0, 0, 0,
1914 0, 300, 0, 0, 301, 0, 0, 0, 0, 0,
1915 710, 0, 302, 303, 304, 0, 0, 0, 0, 0,
1916 305, 306, 307, 0, 0, 0, 0, 308, 0, 0,
1917 0, 0, 237, 0, 0, 0, 0, 0, 0, 0,
1918 0, 0, 0, 140, 144, 309, 0, 19, 0, 0,
1919 0, 184, 184, 184, 184, 1090, 0, 1198, 0, 184,
1920 0, 0, 0, 0, 0, 0, 0, 0, 710, 0,
1921 0, 101, 0, 0, 0, 0, 1090, 1090, 1090, 528,
1922 529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
1923 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
1924 549, 0, 0, 0, 101, 101, 101, 184, 0, 0,
1925 0, 0, 0, 612, 0, 0, 101, 528, 529, 530,
1926 531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
1927 541, 542, 543, 544, 545, 546, 547, 548, 549, 0,
1928 0, 0, 0, 0, 0, 0, 0, 735, 537, 538,
1929 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
1930 549, 0, 184, 184, 510, 184, 280, 8, 9, 10,
1931 381, 12, 281, 282, 283, 675, 284, 14, 0, 0,
1932 0, 0, 0, 0, 0, 0, 0, 0, 101, 0,
1933 101, 0, 17, 285, 18, 19, 20, 0, 286, 287,
1934 21, 101, 288, 289, 290, 22, 291, 292, 0, 24,
1935 0, 573, 0, 293, 294, 295, 296, 297, 27, 0,
1936 28, 298, -286, 0, 0, 299, 0, 0, 0, 0,
1937 0, 300, 0, 0, 854, 0, 0, 0, 389, 391,
1938 0, 0, 302, 303, 855, 0, 476, 0, 0, 0,
1939 305, 306, 307, 0, 576, 0, 0, 856, 578, 0,
1940 0, 676, 0, 0, 0, 0, 0, 184, 0, 184,
1941 0, 0, 0, 0, 0, 309, 0, 280, 8, 9,
1942 10, 381, 12, 281, 282, 283, 675, 284, 14, 0,
1943 0, 0, 0, 0, 1244, 0, 0, 0, 0, 1244,
1944 0, 735, 0, 17, 285, 18, 19, 20, 710, 286,
1945 287, 21, 0, 288, 289, 290, 22, 291, 292, 0,
1946 24, 0, 573, 0, 293, 294, 295, 296, 297, 27,
1947 0, 28, 298, 0, 0, 101, 299, 0, 0, 0,
1948 0, 0, 300, 0, 0, 854, 1090, 0, 0, 651,
1949 652, 0, 654, 302, 303, 855, 0, 0, 0, 0,
1950 0, 305, 306, 307, 0, 576, 0, 0, 856, 578,
1951 0, 0, 676, 0, 0, 0, 0, 0, 0, 0,
1952 0, 0, 0, 0, 0, 0, 309, 1090, 1090, 1090,
1953 0, 101, 101, 0, 101, 0, 0, 0, 0, -358,
1954 8, 9, -358, -358, 12, 225, 0, 0, 0, 0,
1955 14, 0, 0, 0, 0, 0, 0, 184, 0, 0,
1956 0, 0, 0, 0, 0, 17, 0, 18, -358, 0,
1957 0, 0, 0, 21, 0, 0, 0, 0, -358, 0,
1958 0, 0, 24, 0, 573, 0, 0, 0, 0, 0,
1959 710, 27, 0, 129, 130, 1379, 0, 1329, 0, -452,
1960 -452, -452, -452, -452, -452, -452, 0, 574, -452, 0,
1961 -452, 0, 0, 0, 0, 0, 0, 575, 710, 0,
1962 0, -452, 0, -452, -452, -358, 0, 576, -452, 0,
1963 577, 578, 0, -452, 0, 101, 0, 101, -452, 0,
1964 0, 0, -452, 0, -452, 0, 0, 0, 0, 0,
1965 0, -452, 0, -452, -452, -452, -452, -452, 0, -452,
1966 -452, -452, -452, -452, -452, -452, -452, -452, -452, -452,
1967 -452, -452, -452, -452, -452, -452, -452, -452, -452, -452,
1968 -452, -452, 0, -452, -452, -452, 0, -452, -452, -452,
1969 -452, -452, -452, 0, -452, -452, 0, 0, 0, 0,
1970 1330, 0, 0, 0, 0, -452, -452, -452, 1279, -452,
1971 1280, 1281, 1282, 10, 381, 12, 281, 282, 283, 0,
1972 284, 14, 1283, 0, 1284, 1285, 1286, 1287, 1288, 1289,
1973 1290, 1291, 1292, 1293, 15, 16, 17, 285, 18, 19,
1974 20, 0, 286, 287, 21, 0, 288, 289, 290, 22,
1975 291, 292, 0, 24, 0, 0, 0, 293, 294, 295,
1976 296, 297, 27, 0, 1294, 298, 662, 0, 1295, 299,
1977 0, 0, 0, 0, 0, 300, 0, 0, 301, 0,
1978 0, 0, 0, 0, 0, 0, 302, 303, 304, 0,
1979 0, 0, 0, 0, 305, 306, 307, 0, 0, 0,
1980 0, 308, 510, 1296, 7, 8, 9, 10, 381, 12,
1981 281, 282, 283, 675, 284, 14, 0, 0, 0, 309,
73b0fce8 1982 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
1983 17, 285, 18, 19, 20, 0, 286, 287, 21, 0,
1984 288, 289, 290, 22, 291, 292, 0, 24, 0, 573,
1985 0, 293, 294, 295, 296, 297, 27, 0, 28, 29,
1986 -286, 0, 0, 299, 0, 0, 0, 0, 0, 300,
1987 0, 0, 1110, 0, 0, 0, 0, 0, 0, 0,
1988 302, 303, 1111, 0, 0, 0, 0, 0, 305, 306,
1989 307, 0, 576, 0, 0, 1112, 578, 0, 674, 676,
1990 280, 8, 9, 10, 381, 12, 281, 282, 283, 675,
1991 284, 14, 0, 309, 0, 0, 0, 0, 0, 0,
1992 0, 0, 0, 0, 0, 0, 17, 285, 18, 19,
1993 20, 0, 286, 287, 21, 0, 288, 289, 290, 22,
1994 291, 292, 0, 24, 0, 0, 0, 293, 294, 295,
1995 296, 297, 27, 0, 28, 298, 0, 0, 0, 299,
1996 0, 0, 0, 0, 0, 300, 0, 0, 301, 0,
1997 0, 0, 0, 0, 0, 0, 302, 303, 304, 0,
1998 0, 0, 0, 0, 305, 306, 307, 0, 0, 0,
1999 0, 308, 0, 0, 0, 676, 0, 0, 0, 0,
2000 0, 0, 0, 0, 0, 0, 0, -758, 788, 309,
2001 280, 8, 9, 10, 381, 12, 281, 282, 283, 0,
2002 284, 14, 0, 0, 0, 0, 0, 0, 0, 0,
2003 0, 0, 0, 0, 0, 0, 17, 285, 18, 19,
2004 20, 0, 286, 287, 21, 0, 288, 289, 290, 22,
2005 291, 292, 0, 24, 0, 0, 0, 293, 294, 295,
2006 296, 297, 27, 0, 28, 298, 1444, 0, -748, 299,
2007 0, 0, 0, 0, 0, 300, 0, 0, 301, 0,
2008 0, 0, 0, 0, 0, 0, 302, 303, 304, 0,
2009 0, 0, 0, 0, 305, 306, 307, 0, 0, 0,
2010 665, 308, 776, 777, 778, 10, 0, 12, 492, 282,
2011 283, 0, 284, 14, 0, 0, 0, 0, 0, 309,
2012 0, 0, 0, 0, 0, 0, 0, 0, 17, 285,
2013 18, 0, 20, 0, 286, 287, 21, 0, 288, 289,
2014 290, 22, 291, 292, 0, 24, 0, 0, 0, 293,
2015 294, 295, 296, 297, 27, 0, 779, 780, 666, 0,
2016 0, 299, 0, 0, 0, 0, 0, 300, 0, 0,
2017 301, 0, 0, 0, 0, 0, 0, 0, 302, 303,
2018 304, 0, 0, 0, 0, 0, 305, 306, 307, 0,
2019 0, 0, 0, 308, 781, 665, 0, 776, 777, 778,
2020 10, 0, 12, 492, 282, 283, 0, 284, 14, 0,
2021 922, 309, 0, 0, 0, 1166, 0, 0, 0, 0,
2022 0, 0, 0, 17, 285, 18, 0, 20, 0, 286,
2023 287, 21, 0, 288, 289, 290, 22, 291, 292, 0,
2024 24, 0, 0, 0, 293, 294, 295, 296, 297, 27,
2025 0, 779, 780, 666, 0, 0, 299, 0, 0, 0,
2026 0, 0, 300, 0, 0, 301, 0, 0, 0, 0,
2027 0, 0, 0, 302, 303, 304, 0, 0, 0, 0,
2028 0, 305, 306, 307, 0, 0, 0, 665, 308, 776,
2029 777, 778, 10, 0, 12, 492, 282, 283, 0, 284,
2030 14, 0, 0, 0, 0, -456, 309, 1166, 0, 0,
2031 0, 0, 0, 0, 0, 17, 285, 18, 0, 20,
2032 0, 286, 287, 21, 0, 288, 289, 290, 22, 291,
2033 292, 0, 24, 0, 0, 0, 293, 294, 295, 296,
2034 297, 27, 0, 779, 780, 666, 0, 0, 299, 0,
2035 0, 0, 0, 0, 300, 0, 0, 301, 0, 0,
2036 0, 0, 0, 0, 0, 302, 303, 304, 0, 0,
2037 0, 0, 0, 305, 306, 307, 0, 0, 0, 665,
2038 308, 776, 777, 778, 10, 0, 12, 492, 282, 283,
2039 0, 284, 14, 0, 0, 0, 0, 1212, 309, 0,
2040 0, 0, 0, 0, 0, 0, 0, 17, 285, 18,
2041 0, 20, 0, 286, 287, 21, 0, 288, 289, 290,
2042 22, 291, 292, 0, 24, 0, 0, 0, 293, 294,
2043 295, 296, 297, 27, 0, 779, 780, 666, 0, 0,
2044 299, 0, 0, 0, 0, 0, 300, 0, 0, 301,
2045 0, 0, 0, 0, 0, 0, 0, 302, 303, 304,
2046 0, 0, 0, 0, 0, 305, 306, 307, 0, 0,
2047 0, 0, 308, 781, 665, 0, 280, 8, 9, 10,
2048 0, 12, 492, 282, 283, 0, 284, 14, 0, 0,
2049 309, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2050 0, 0, 17, 285, 18, 0, 20, 0, 286, 287,
2051 21, 0, 288, 289, 290, 22, 291, 292, 0, 24,
2052 0, 0, 0, 293, 294, 295, 296, 297, 27, 0,
2053 28, 298, 666, 0, 0, 299, 0, 0, 0, 0,
2054 0, 300, 0, 0, 301, 0, 0, 0, 0, 0,
2055 0, 0, 302, 303, 304, 0, 0, 0, 0, 0,
2056 305, 306, 307, 0, 0, 0, 0, 308, 0, 0,
2057 510, 0, 280, 8, 9, 10, 1216, 12, 281, 282,
2058 283, 0, 284, 14, 0, 309, 0, 0, 0, 0,
2059 0, 0, 0, 0, 0, 0, 0, 0, 17, 285,
2060 18, 0, 20, 0, 286, 287, 21, 0, 288, 289,
2061 290, 22, 291, 292, 0, 24, 0, 0, 0, 293,
2062 294, 295, 296, 297, 27, 0, 28, 298, -286, 0,
2063 0, 299, 0, 0, 0, 0, 0, 300, 0, 0,
2064 511, 0, 0, 0, 0, 0, 0, 0, 302, 303,
2065 512, 0, 0, 0, 0, 0, 305, 306, 307, 0,
2066 0, 0, 665, 513, 280, 8, 9, 10, 0, 12,
2067 492, 282, 283, 0, 284, 14, 0, 0, 0, 0,
2068 0, 309, 0, 0, 0, 0, 0, 0, 0, 0,
2069 17, 285, 18, 0, 20, 0, 286, 287, 21, 0,
2070 288, 289, 290, 22, 291, 292, 0, 24, 0, 0,
2071 0, 293, 294, 295, 296, 297, 27, 0, 28, 298,
2072 666, 0, 0, 299, 0, 0, 0, 0, 0, 300,
2073 0, 0, 301, 0, 0, 0, 0, 0, 0, 0,
2074 302, 303, 304, 0, 0, 0, 0, 0, 305, 306,
2075 307, 0, 0, 0, 510, 308, 7, 8, 9, 10,
2076 0, 12, 281, 282, 283, 0, 284, 14, 0, 0,
2077 0, 0, 0, 309, 0, 0, 0, 0, 0, 0,
2078 0, 0, 17, 285, 18, 0, 20, 0, 286, 287,
2079 21, 0, 288, 289, 290, 22, 291, 292, 0, 24,
2080 0, 0, 0, 293, 294, 295, 296, 297, 27, 0,
2081 28, 29, -286, 0, 0, 299, 0, 0, 0, 0,
2082 0, 300, 0, 0, 1421, 0, 0, 0, 0, 0,
2083 0, 0, 302, 303, 1422, 0, 0, 0, 0, 0,
2084 305, 306, 307, 0, 0, 0, 1511, 1423, 280, 8,
2085 9, 10, 0, 12, 281, 282, 283, 0, 284, 14,
2086 0, 0, 0, 0, 0, 309, 0, 0, 0, 0,
2087 0, 0, 0, 0, 17, 285, 18, 0, 20, 0,
2088 286, 287, 21, 0, 288, 289, 290, 22, 291, 292,
2089 0, 24, 0, 0, 0, 293, 294, 295, 296, 297,
2090 27, 0, 28, 298, 0, 0, -175, 299, 0, 0,
2091 0, 0, 0, 300, 0, 0, 301, 0, 0, 0,
2092 0, 0, 0, 0, 302, 303, 304, 0, 0, 0,
2093 0, 0, 305, 306, 307, 0, 0, 0, 788, 308,
2094 280, 8, 9, 10, 0, 12, 492, 282, 283, 0,
2095 284, 14, 0, 0, 0, 0, 0, 309, 0, 0,
2096 0, 0, 0, 0, 0, 0, 17, 285, 18, 0,
2097 20, 0, 286, 287, 21, 0, 288, 289, 290, 22,
2098 291, 292, 0, 24, 0, 0, 0, 293, 294, 295,
2099 296, 297, 27, 0, 28, 298, 0, 0, 0, 299,
2100 0, 0, 0, 0, 0, 300, 243, 0, 301, 8,
2101 9, 0, 0, 12, 13, 0, 302, 303, 304, 14,
2102 0, 0, 0, 0, 305, 306, 307, 0, 0, 0,
2103 0, 308, 0, 0, 17, 0, 18, 0, 0, 0,
2104 0, 0, 21, 0, 244, 245, 0, -748, 0, 309,
2105 0, 24, 0, 246, 0, 0, 0, 0, 0, 0,
2106 27, 0, 129, 130, 0, 247, 0, 0, 0, 248,
2107 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
2108 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
2109 0, 0, 269, 270, 271, 0, 0, 272, 0, 873,
2110 273, 280, 8, 9, 10, 0, 12, 492, 282, 283,
2111 0, 284, 14, 0, 0, 0, 0, 274, 0, 0,
2112 0, 0, 0, 0, 0, 0, 0, 17, 285, 18,
2113 0, 20, 0, 286, 287, 21, 0, 288, 289, 290,
2114 22, 291, 292, 0, 24, 0, 0, 0, 293, 294,
2115 295, 296, 297, 27, 0, 28, 298, 0, 0, 0,
2116 299, 0, 0, 0, 0, 0, 300, 0, 0, 301,
2117 0, 0, 0, 0, 0, 0, 0, 302, 303, 304,
2118 0, 0, 0, 0, 0, 305, 306, 307, 0, 0,
2119 0, 875, 308, 280, 8, 9, 10, 0, 12, 492,
2120 282, 283, 0, 284, 14, 0, 0, 0, 0, 0,
2121 309, 0, 0, 0, 0, 0, 0, 0, 0, 17,
2122 285, 18, 0, 20, 0, 286, 287, 21, 0, 288,
2123 289, 290, 22, 291, 292, 0, 24, 0, 0, 0,
2124 293, 294, 295, 296, 297, 27, 0, 28, 298, 0,
2125 0, 0, 299, 0, 0, 0, 0, 0, 300, 0,
2126 0, 301, 0, 0, 0, 0, 0, 0, 0, 302,
2127 303, 304, 0, 0, 0, 0, 0, 305, 306, 307,
2128 0, 0, 0, 1396, 308, 280, 8, 9, 10, 0,
2129 12, 492, 282, 283, 0, 284, 14, 0, 0, 0,
2130 0, 0, 309, 0, 0, 0, 0, 0, 0, 0,
2131 0, 17, 285, 18, 0, 20, 0, 286, 287, 21,
2132 0, 288, 289, 290, 22, 291, 292, 0, 24, 0,
2133 0, 0, 293, 294, 295, 296, 297, 27, 0, 28,
2134 298, 0, 0, 0, 299, 0, 0, 0, 0, 0,
2135 300, 0, 0, 301, 0, 0, 0, 0, 0, 0,
2136 0, 302, 303, 304, 0, 0, 0, 0, 0, 305,
2137 306, 307, 280, 8, 9, 10, 308, 12, 492, 282,
2138 283, 0, 284, 14, 0, 0, 0, 0, 0, 0,
2139 0, 0, 0, 0, 309, 0, 0, 0, 17, 285,
2140 18, 0, 20, 0, 286, 287, 21, 0, 288, 289,
2141 290, 22, 291, 292, 0, 24, 0, 0, 0, 293,
2142 294, 295, 296, 297, 27, 0, 28, 298, 0, 0,
2143 0, 299, 0, 0, 0, 0, 0, 300, 0, 0,
2144 301, 0, 0, 0, 0, 0, 0, 0, 302, 303,
2145 304, 0, 0, 0, 0, 0, 305, 306, 307, 0,
2146 0, 0, 0, 308, 534, 535, 536, 537, 538, 539,
2147 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
2148 0, 309, 827, 1280, 1281, 1282, 10, 381, 12, 281,
2149 282, 283, 0, 284, 14, 1283, 0, 1284, 1285, 1286,
2150 1287, 1288, 1289, 1290, 1291, 1292, 1293, 15, 16, 17,
2151 285, 18, 19, 20, 0, 286, 287, 21, 0, 288,
2152 289, 290, 22, 291, 292, 0, 24, 0, 0, 0,
2153 293, 294, 295, 296, 297, 27, 0, 1294, 298, 662,
2154 0, 1295, 299, 0, 0, 0, 0, 0, 300, 0,
2155 0, 301, 0, 0, 0, 0, 0, 0, 0, 302,
2156 303, 304, 0, 0, 0, 0, 0, 305, 306, 307,
2157 0, 0, 0, 0, 308, 0, 1296, 0, 0, 0,
6a88a0c0 2158 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
2159 0, 1387, 309, 1280, 1281, 1282, 10, 381, 12, 281,
2160 282, 283, 0, 284, 14, 1283, 0, 1284, 1285, 1286,
2161 1287, 1288, 1289, 1290, 1291, 1292, 1293, 15, 16, 17,
2162 285, 18, 19, 20, 0, 286, 287, 21, 0, 288,
2163 289, 290, 22, 291, 292, 0, 24, 0, 0, 0,
2164 293, 294, 295, 296, 297, 27, 0, 1294, 298, 662,
2165 0, 1295, 299, 0, 0, 0, 0, 0, 300, 0,
2166 0, 301, 0, 0, 0, 0, 0, 0, 0, 302,
2167 303, 304, 0, 0, 0, 0, 0, 305, 306, 307,
2168 0, 0, 0, 0, 308, 0, 1296, 0, 0, 1280,
2169 1281, 1282, 10, 381, 12, 281, 282, 283, 0, 284,
2170 14, 1283, 309, 1284, 1285, 1286, 1287, 1288, 1289, 1290,
2171 1291, 1292, 1293, 15, 16, 17, 285, 18, 19, 20,
2172 0, 286, 287, 21, 0, 288, 289, 290, 22, 291,
2173 292, 0, 24, 0, 0, 0, 293, 294, 295, 296,
2174 297, 27, 0, 1294, 298, 1488, 0, 1295, 299, 0,
2175 0, 0, 0, 0, 300, 0, 0, 301, 0, 0,
2176 0, 0, 0, 0, 0, 302, 303, 304, 0, 0,
2177 0, 0, 0, 305, 306, 307, 0, 0, 0, 0,
2178 308, 0, 1296, 0, 0, 1280, 1281, 1282, 10, 381,
2179 12, 281, 282, 283, 0, 284, 14, 1283, 309, 1284,
2180 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 15,
2181 16, 17, 285, 18, 19, 20, 0, 286, 287, 21,
2182 0, 288, 289, 290, 22, 291, 292, 0, 24, 0,
2183 0, 0, 293, 294, 295, 296, 297, 27, 0, 1294,
2184 298, 0, 0, 1295, 299, 0, 0, 0, 0, 0,
2185 300, 0, 0, 301, 0, 0, 0, 0, 0, 0,
2186 0, 302, 303, 304, 0, 0, 0, 0, 0, 305,
2187 306, 307, 0, 0, 0, 0, 308, 0, 1296, 7,
2188 8, 9, 10, 381, 12, 281, 282, 283, 675, 284,
2189 14, 0, 0, 0, 309, 0, 0, 0, 0, 0,
2190 0, 0, 0, 0, 0, 17, 285, 18, 19, 20,
2191 0, 286, 287, 21, 0, 288, 289, 290, 22, 291,
2192 292, 0, 24, 0, 573, 0, 293, 294, 295, 296,
2193 297, 27, 0, 28, 29, 0, 0, 0, 299, 0,
2194 0, 0, 0, 0, 300, 0, 0, 1110, 0, 0,
2195 0, 0, 0, 0, 0, 302, 303, 1111, 0, 0,
2196 0, 0, 0, 305, 306, 307, 0, 576, 0, 0,
2197 1112, 578, 0, 0, 676, 280, 8, 9, 10, 0,
2198 12, 281, 282, 283, 0, 284, 14, 0, 309, 0,
73b0fce8 2199 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
2200 0, 17, 285, 18, 0, 20, 0, 286, 287, 21,
2201 0, 288, 289, 290, 22, 291, 292, 0, 24, 0,
2202 573, 0, 293, 294, 295, 296, 297, 27, 0, 28,
2203 298, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2204 300, 0, 0, 854, 0, 0, 0, 0, 0, 0,
2205 0, 302, 303, 855, 0, 0, 0, 0, 0, 305,
2206 306, 307, 0, 576, 0, 0, 856, 578, 7, 8,
2207 9, 10, 0, 12, 281, 282, 283, 0, 284, 14,
2208 0, 0, 0, 0, 309, 0, 0, 0, 0, 0,
2209 0, 0, 0, 0, 17, 285, 18, 0, 20, 0,
2210 286, 287, 21, 0, 288, 289, 290, 22, 291, 292,
2211 0, 24, 0, 573, 0, 293, 294, 295, 296, 297,
2212 27, 0, 28, 29, 0, 0, 0, 0, 0, 0,
2213 0, 0, 0, 300, 0, 0, 1110, 0, 0, 0,
2214 0, 0, 0, 0, 302, 303, 1111, 0, 0, 0,
2215 0, 0, 305, 306, 307, 0, 576, 0, 0, 1112,
2216 578, 280, 8, 9, 10, 0, 12, 492, 282, 283,
2217 0, 284, 14, 0, 0, 0, 0, 309, 0, 0,
2218 0, 0, 0, 0, 0, 0, 0, 17, 285, 18,
2219 0, 20, 0, 286, 287, 21, 0, 288, 289, 290,
2220 22, 291, 292, 0, 24, 0, 0, 0, 293, 294,
2221 295, 296, 297, 27, 0, 28, 298, 0, 0, 1364,
2222 299, 0, 0, 0, 0, 0, 300, 0, 0, 301,
2223 0, 0, 0, 0, 0, 0, 0, 302, 303, 304,
2224 0, 0, 0, 0, 0, 305, 306, 307, 0, 0,
2225 0, 0, 308, 280, 8, 9, 10, 381, 12, 281,
2226 282, 283, 0, 284, 14, 0, 0, 0, 0, 0,
2227 309, 0, 0, 0, 0, 0, 0, 0, 0, 17,
2228 285, 18, 19, 20, 0, 286, 287, 21, 0, 288,
2229 289, 290, 22, 291, 292, 0, 24, 0, 0, 0,
2230 293, 294, 295, 296, 297, 27, 0, 28, 298, 0,
2231 0, 0, 0, 0, 0, 0, 0, 0, 300, 0,
2232 0, 301, 0, 0, 0, 0, 0, 0, 0, 302,
2233 303, 304, 0, 0, 0, 0, 0, 305, 306, 307,
2234 280, 8, 9, 10, 308, 12, 281, 282, 283, 0,
2235 284, 14, 0, 0, 0, 0, 0, 0, 0, 0,
2236 0, 0, 309, 0, 0, 0, 17, 285, 18, 0,
2237 20, 0, 286, 287, 21, 0, 288, 289, 290, 22,
2238 291, 292, 0, 24, 0, 0, 0, 293, 294, 295,
2239 296, 297, 27, 0, 28, 298, 0, 0, 0, 299,
2240 0, 0, 0, 0, 0, 300, 0, 0, 301, 0,
2241 0, 0, 0, 0, 0, 0, 302, 303, 304, 0,
2242 0, 0, 0, 0, 305, 306, 307, 280, 8, 9,
2243 10, 308, 12, 492, 282, 283, 0, 284, 14, 0,
2244 0, 0, 0, 0, 0, 0, 0, 0, 0, 309,
2245 0, 0, 0, 17, 285, 18, 0, 20, 0, 286,
2246 287, 21, 0, 288, 289, 290, 22, 291, 292, 0,
2247 24, 0, 0, 0, 293, 294, 295, 296, 297, 27,
2248 0, 28, 298, 0, 0, 0, 299, 0, 0, 0,
2249 0, 0, 300, 0, 0, 301, 0, 0, 0, 0,
2250 0, 0, 0, 302, 303, 304, 0, 0, 0, 0,
2251 0, 305, 306, 307, 280, 8, 9, 10, 308, 12,
2252 492, 282, 283, 0, 284, 14, 0, 0, 0, 0,
2253 0, 0, 0, 0, 0, 0, 309, 0, 0, 0,
2254 17, 285, 18, 0, 20, 0, 286, 287, 21, 0,
2255 288, 289, 290, 22, 291, 292, 0, 24, 0, 0,
2256 0, 293, 294, 295, 296, 297, 27, 0, 28, 298,
2257 525, 0, 0, 0, 0, 0, 0, 0, 0, 300,
2258 0, 0, 301, 0, 0, 0, 0, 0, 0, 0,
2259 302, 303, 304, 0, 0, 0, 0, 0, 305, 306,
2260 307, 280, 8, 9, 10, 526, 12, 492, 282, 283,
2261 0, 284, 14, 0, 0, 0, 0, 0, 0, 0,
2262 0, 0, 0, 309, 0, 0, 0, 17, 285, 18,
2263 0, 20, 0, 286, 287, 21, 0, 288, 289, 290,
2264 22, 291, 292, 0, 24, 0, 0, 0, 293, 294,
2265 295, 296, 297, 27, 0, 28, 298, 0, 0, 0,
2266 0, 0, 0, 0, 0, 0, 300, 0, 0, 301,
2267 0, 0, 0, 0, 0, 0, 0, 302, 303, 304,
2268 0, 0, 0, 0, 0, 305, 306, 307, 0, 0,
2269 0, 0, 308, 562, 280, 8, 9, 10, 0, 12,
2270 492, 282, 283, 0, 284, 14, 0, 0, 0, 0,
2271 309, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2272 17, 285, 18, 0, 20, 0, 286, 287, 21, 0,
2273 288, 289, 290, 22, 291, 292, 0, 24, 0, 0,
2274 0, 293, 294, 295, 296, 297, 27, 0, 28, 298,
2275 0, 0, 0, 299, 0, 0, 0, 0, 0, 300,
2276 0, 0, 511, 0, 0, 0, 0, 0, 0, 0,
2277 302, 303, 512, 0, 0, 0, 0, 0, 305, 306,
2278 307, 1078, 8, 9, 10, 513, 12, 492, 282, 283,
2279 0, 284, 14, 0, 0, 0, 0, 0, 0, 0,
2280 0, 0, 0, 309, 0, 0, 0, 17, 285, 18,
2281 0, 20, 0, 286, 287, 21, 0, 288, 289, 290,
2282 22, 291, 292, 0, 24, 0, 0, 0, 293, 294,
2283 295, 296, 297, 27, 0, 28, 298, 0, 0, 0,
2284 299, 0, 0, 0, 0, 0, 300, 0, 0, 301,
2285 0, 0, 0, 0, 0, 0, 0, 302, 303, 304,
2286 0, 0, 0, 0, 0, 305, 306, 307, 7, 8,
2287 9, 10, 308, 12, 492, 282, 283, 0, 284, 14,
73b0fce8 2288 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
2289 309, 0, 0, 0, 17, 285, 18, 0, 20, 0,
2290 286, 287, 21, 0, 288, 289, 290, 22, 291, 292,
2291 0, 24, 0, 0, 0, 293, 294, 295, 296, 297,
2292 27, 0, 28, 29, 0, 0, 0, 299, 0, 0,
2293 0, 0, 0, 300, 0, 0, 1421, 0, 0, 0,
2294 0, 0, 0, 0, 302, 303, 1422, 0, 0, 0,
2295 0, 0, 305, 306, 307, 280, 8, 9, 10, 1423,
2296 12, 492, 282, 283, 0, 284, 14, 0, 0, 0,
2297 0, 0, 0, 0, 0, 0, 0, 309, 0, 0,
2298 0, 17, 285, 18, 0, 20, 0, 286, 287, 21,
2299 0, 288, 289, 290, 22, 291, 292, 0, 24, 0,
2300 0, 0, 293, 294, 295, 296, 297, 27, 0, 28,
2301 298, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2302 300, 0, 0, 301, 0, 0, 0, 0, 0, 0,
2303 0, 302, 303, 304, 0, 0, 0, 0, 0, 305,
2304 306, 307, 280, 8, 9, 10, 493, 12, 492, 282,
2305 283, 0, 284, 14, 0, 0, 0, 0, 0, 0,
2306 0, 0, 0, 0, 309, 0, 0, 0, 17, 285,
2307 18, 0, 20, 0, 286, 287, 21, 0, 288, 289,
2308 290, 22, 291, 292, 0, 24, 0, 0, 0, 293,
2309 294, 295, 296, 297, 27, 0, 28, 298, 0, 0,
2310 0, 0, 0, 0, 0, 0, 0, 300, 0, 0,
2311 301, 0, 0, 0, 0, 0, 0, 0, 302, 303,
2312 304, 0, 0, 0, 0, 0, 305, 306, 307, 280,
2313 8, 9, 10, 496, 12, 492, 282, 283, 0, 284,
73b0fce8 2314 14, 0, 0, 0, 0, 0, 0, 0, 0, 0,
cf776105
JM
2315 0, 309, 0, 0, 0, 17, 285, 18, 0, 20,
2316 0, 286, 287, 21, 0, 288, 289, 290, 22, 291,
2317 292, 0, 24, 0, 0, 0, 293, 294, 295, 296,
2318 297, 27, 0, 28, 298, 0, 0, 0, 0, 0,
2319 0, 0, 0, 0, 300, 0, 0, 301, 0, 0,
2320 0, 0, 0, 0, 0, 302, 303, 304, 0, 0,
2321 0, 0, 0, 305, 306, 307, 280, 8, 9, 10,
2322 308, 12, 492, 282, 283, 0, 284, 14, 0, 0,
2323 0, 0, 0, 0, 0, 0, 0, 0, 309, 0,
2324 0, 0, 17, 285, 18, 0, 20, 0, 286, 287,
2325 21, 0, 288, 289, 290, 22, 291, 292, 0, 24,
2326 0, 0, 0, 293, 294, 295, 296, 297, 27, 0,
2327 28, 298, 0, 0, 0, 0, 0, 0, 0, 0,
2328 0, 300, 0, 0, 511, 0, 0, 0, 0, 0,
2329 0, 0, 302, 303, 512, 0, 0, 0, 0, 0,
2330 305, 306, 307, 7, 8, 9, 10, 513, 12, 281,
2331 282, 283, 0, 284, 14, 0, 0, 0, 0, 0,
2332 0, 0, 0, 0, 0, 309, 0, 0, 0, 17,
2333 285, 18, 0, 20, 0, 286, 287, 21, 0, 288,
2334 289, 290, 22, 291, 292, 0, 24, 0, 0, 0,
2335 293, 294, 295, 296, 297, 27, 0, 28, 29, 0,
2336 0, 0, 0, 0, 0, 0, 0, 0, 300, 0,
2337 161, 1421, 7, 8, 9, 10, 11, 12, 13, 302,
2338 303, 1422, 0, 14, 0, 0, 0, 305, 306, 307,
2339 0, 0, 0, 0, 1423, 0, 15, 16, 17, 0,
2340 18, 19, 20, 0, 0, 0, 21, 0, 0, 0,
2341 0, 22, 309, 0, 23, 24, 25, 0, 26, 0,
2342 0, 0, 0, 0, 27, 0, 28, 29, 0, 718,
2343 30, 7, 8, 719, 10, 381, 12, 13, 0, 0,
73b0fce8
KL
2344 31, 0, 14, 0, 0, 0, 0, 0, 0, 0,
2345 32, 0, 0, 0, 0, 0, 0, 17, 33, 18,
cf776105
JM
2346 19, 20, 0, 34, 0, 21, 0, 0, 0, 35,
2347 22, 0, 0, 0, 24, 720, 0, 630, 0, 0,
2348 0, 0, 0, 27, 0, 28, 29, 0, 0, 721,
2349 0, 722, 972, 8, 719, 10, 187, 12, 188, 31,
2350 0, 0, 0, 14, 0, 0, 0, 0, 0, 32,
2351 0, 0, 0, 0, 0, 0, 0, 33, 17, 0,
2352 18, 19, 34, 0, 0, 0, 21, 0, 0, 0,
2353 0, 22, 0, 0, 0, 24, 0, 7, 8, 9,
2354 10, 381, 12, 13, 27, 0, 28, 29, 14, 0,
2355 0, 0, 974, 0, 0, 0, 0, 0, 0, 0,
2356 31, 0, 0, 17, 0, 18, 19, 0, 0, 0,
2357 32, 21, 0, 0, 0, 0, 22, 0, 33, 0,
2358 24, 0, 0, 34, 0, 0, 0, 0, 0, 27,
2359 0, 28, 29, 7, 8, 9, 10, 187, 12, 188,
2360 0, 0, 0, 0, 14, 31, 0, 0, 0, 0,
2361 0, 0, 0, 0, 0, 32, 0, 0, 0, 17,
2362 0, 18, 19, 33, 0, 0, 0, 21, 34, 0,
2363 0, 0, 22, 0, 0, 0, 24, 0, 7, 8,
2364 9, 10, 196, 197, 198, 27, 0, 28, 29, 14,
2365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2366 0, 31, 0, 0, 0, 0, 0, 19, 0, 0,
2367 0, 32, 21, 0, 0, 0, 0, 22, 0, 33,
2368 0, 24, 0, 573, 34, 0, 0, 0, 0, 0,
2369 27, 0, 28, 29, 0, 0, 0, 0, 0, 0,
2370 0, 0, 0, 0, 0, 0, 175, 0, 0, 0,
2371 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
2372 0, 0, 0, 0, 33, 0, 0, 0, 0, 1380,
2373 528, 529, 530, 531, 532, 533, 534, 535, 536, 537,
2374 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
2375 548, 549, 528, 529, 530, 531, 532, 533, 534, 535,
2376 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
2377 546, 547, 548, 549, 0, 0, 0, 0, 0, 1164,
2378 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
2379 545, 546, 547, 548, 549, 0, 0, 1432, 1341, 528,
2380 529, 530, 531, 532, 533, 534, 535, 536, 537, 538,
2381 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
2382 549, 1474, 528, 529, 530, 531, 532, 533, 534, 535,
2383 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
2384 546, 547, 548, 549, 528, 529, 530, 531, 532, 533,
2385 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
2386 544, 545, 546, 547, 548, 549, 532, 533, 534, 535,
2387 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
2388 546, 547, 548, 549
861bb6c1
JL
2389};
2390
2391static const short yycheck[] = { 4,
cf776105
JM
2392 34, 54, 658, 4, 75, 380, 156, 24, 380, 4,
2393 146, 147, 328, 56, 660, 58, 231, 125, 83, 351,
2394 921, 4, 380, 440, 4, 191, 89, 461, 91, 334,
2395 79, 36, 34, 284, 285, 36, 41, 523, 4, 221,
2396 41, 36, 128, 723, 38, 191, 41, 133, 31, 32,
2397 61, 56, 732, 36, 200, 1274, 36, 641, 41, 4,
2398 226, 41, 413, 1409, 1442, 316, 71, 53, 816, 577,
2399 36, 132, 133, 136, 1, 41, 584, 58, 83, 11,
2400 0, 11, 87, 1297, 89, 132, 91, 59, 1466, 11,
2401 4, 36, 141, 63, 34, 63, 41, 0, 1426, 1304,
2402 83, 106, 107, 63, 199, 200, 1311, 49, 14, 1444,
2403 276, 36, 146, 147, 148, 75, 41, 111, 79, 334,
2404 8, 9, 36, 60, 195, 1439, 14, 41, 100, 75,
2405 135, 136, 59, 138, 135, 94, 185, 1465, 48, 60,
2406 110, 63, 110, 177, 146, 147, 148, 1, 191, 37,
2407 335, 336, 135, 12, 9, 160, 199, 200, 46, 160,
2408 48, 578, 328, 146, 147, 151, 517, 1545, 1496, 83,
2409 1, 111, 1507, 14, 111, 177, 82, 160, 110, 495,
2410 110, 1495, 23, 194, 94, 1531, 229, 48, 110, 110,
2411 135, 202, 175, 176, 55, 1409, 182, 4, 75, 105,
2412 110, 60, 387, 388, 63, 59, 94, 62, 1413, 63,
2413 191, 741, 12, 79, 75, 160, 746, 648, 199, 200,
2414 39, 135, 48, 64, 7, 659, 286, 287, 59, 36,
2415 48, 1467, 63, 94, 41, 75, 55, 103, 55, 98,
2416 61, 301, 96, 1479, 304, 226, 160, 307, 1453, 56,
2417 310, 110, 61, 1489, 314, 38, 321, 1476, 75, 60,
2418 60, 48, 322, 63, 325, 96, 132, 353, 94, 95,
2419 1506, 60, 277, 631, 337, 141, 94, 95, 325, 60,
2420 25, 242, 123, 175, 176, 177, 1034, 76, 374, 1525,
2421 111, 596, 624, 1498, 61, 276, 432, 433, 98, 445,
2422 48, 885, 111, 308, 145, 4, 5, 94, 683, 110,
2423 661, 683, 1548, 374, 59, 465, 321, 61, 63, 185,
2424 12, 227, 852, 55, 329, 94, 27, 28, 135, 110,
2425 383, 32, 337, 338, 4, 5, 94, 338, 321, 60,
2426 61, 384, 385, 75, 111, 60, 94, 328, 856, 444,
2427 445, 96, 218, 160, 94, 338, 55, 452, 57, 58,
2428 61, 55, 48, 679, 65, 4, 5, 111, 60, 464,
2429 75, 63, 71, 65, 48, 380, 242, 218, 219, 384,
2430 48, 75, 81, 454, 892, 380, 1287, 57, 58, 484,
2431 231, 65, 48, 338, 437, 110, 95, 380, 432, 433,
2432 434, 444, 445, 889, 385, 448, 98, 321, 94, 452,
2433 111, 81, 60, 61, 48, 600, 4, 5, 57, 58,
2434 94, 426, 109, 931, 338, 1173, 94, 490, 334, 959,
2435 432, 433, 434, 418, 865, 48, 853, 868, 94, 95,
2436 451, 971, 81, 426, 48, 1346, 48, 27, 28, 432,
2437 433, 511, 512, 63, 1355, 1356, 467, 462, 48, 300,
2438 94, 462, 61, 444, 445, 75, 380, 333, 1148, 57,
2439 58, 452, 63, 904, 905, 76, 1006, 78, 1008, 462,
2440 48, 94, 462, 464, 75, 490, 25, 55, 493, 48,
2441 94, 496, 94, 81, 559, 500, 501, 502, 503, 504,
2442 48, 462, 55, 484, 94, 95, 48, 75, 513, 350,
2443 63, 886, 426, 55, 886, 60, 61, 462, 523, 48,
2444 110, 526, 75, 957, 390, 707, 94, 709, 886, 4,
2445 5, 338, 714, 75, 9, 94, 428, 55, 430, 48,
2446 432, 433, 434, 48, 48, 63, 94, 63, 462, 602,
2447 61, 443, 94, 558, 559, 55, 861, 4, 5, 75,
2448 603, 65, 9, 63, 25, 94, 27, 28, 919, 1470,
2449 55, 756, 577, 48, 32, 75, 559, 4, 5, 584,
2450 55, 1089, 57, 58, 637, 94, 639, 640, 59, 94,
2451 94, 574, 575, 459, 577, 638, 71, 640, 59, 765,
2452 63, 584, 63, 55, 1112, 700, 81, 858, 55, 717,
2453 57, 58, 629, 3, 4, 5, 91, 55, 459, 94,
2454 95, 487, 603, 75, 71, 48, 679, 1044, 55, 48,
2455 57, 58, 438, 638, 81, 96, 679, 642, 1069, 1070,
2456 446, 55, 659, 48, 71, 559, 861, 75, 95, 3,
2457 4, 5, 111, 4, 81, 726, 727, 700, 60, 640,
2458 703, 75, 59, 577, 735, 1099, 55, 57, 58, 48,
2459 584, 94, 95, 94, 76, 94, 78, 730, 683, 742,
2460 743, 744, 588, 55, 525, 36, 65, 110, 731, 94,
2461 41, 81, 55, 1127, 737, 76, 8, 9, 679, 110,
2462 683, 55, 14, 57, 58, 571, 1040, 1041, 55, 1043,
2463 110, 3, 4, 5, 6, 94, 95, 95, 723, 700,
2464 725, 587, 723, 1039, 725, 37, 731, 732, 75, 4,
2465 5, 732, 4, 5, 46, 110, 741, 742, 743, 744,
2466 723, 746, 725, 723, 1301, 59, 1303, 1133, 1134, 732,
2467 42, 65, 732, 34, 4, 5, 11, 49, 741, 9,
2468 110, 1147, 723, 746, 725, 57, 58, 827, 111, 683,
2469 731, 732, 954, 955, 956, 4, 5, 61, 723, 1435,
2470 725, 3, 57, 58, 765, 57, 58, 732, 629, 81,
2471 113, 3, 4, 5, 854, 855, 94, 89, 690, 691,
2472 641, 693, 84, 85, 55, 55, 81, 57, 58, 723,
2473 815, 725, 63, 1459, 819, 1000, 1001, 1002, 732, 60,
2474 61, 71, 4, 5, 75, 666, 95, 741, 57, 58,
2475 95, 81, 746, 818, 60, 61, 48, 60, 730, 48,
2476 113, 846, 65, 55, 63, 57, 58, 852, 897, 94,
2477 1236, 856, 81, 76, 25, 94, 27, 28, 892, 1245,
2478 1246, 75, 1248, 753, 754, 755, 147, 148, 75, 852,
2479 75, 854, 855, 856, 75, 57, 58, 3, 4, 5,
2480 6, 886, 94, 888, 889, 94, 95, 892, 59, 11,
2481 892, 886, 63, 60, 61, 60, 177, 931, 111, 81,
2482 110, 110, 60, 886, 975, 60, 61, 890, 891, 892,
2483 981, 982, 110, 110, 985, 986, 42, 110, 989, 55,
2484 61, 964, 965, 730, 731, 96, 931, 63, 111, 931,
2485 110, 57, 58, 25, 983, 27, 28, 111, 852, 75,
2486 945, 55, 856, 113, 110, 55, 65, 952, 931, 63,
2487 993, 1087, 1088, 63, 959, 861, 113, 25, 75, 27,
2488 28, 75, 75, 89, 75, 75, 971, 59, 113, 113,
2489 110, 63, 886, 110, 1110, 1111, 959, 110, 892, 59,
2490 3, 4, 5, 6, 55, 110, 1046, 1303, 971, 994,
2491 8, 59, 113, 994, 860, 63, 862, 94, 890, 891,
2492 892, 1006, 48, 1008, 96, 65, 1357, 60, 1394, 1395,
2493 94, 994, 997, 111, 994, 37, 61, 931, 1369, 42,
2494 4, 5, 983, 1006, 65, 1008, 65, 308, 96, 65,
2495 61, 897, 55, 994, 57, 58, 877, 110, 61, 931,
2496 1025, 1026, 1091, 63, 885, 959, 110, 110, 71, 994,
2497 1110, 1111, 110, 1087, 1088, 1089, 110, 971, 81, 65,
2498 65, 1436, 4, 5, 1436, 65, 89, 3, 4, 5,
2499 113, 94, 65, 57, 58, 1426, 1110, 1111, 1112, 94,
2500 994, 60, 1099, 63, 1089, 1087, 1088, 1089, 4, 5,
2501 76, 110, 1006, 110, 1008, 31, 1139, 1140, 110, 1142,
2502 1143, 110, 1145, 45, 1087, 1088, 1089, 1112, 1110, 1111,
2503 1112, 110, 1463, 55, 1465, 57, 58, 983, 76, 55,
2504 76, 57, 58, 1108, 76, 110, 63, 1110, 1111, 1112,
2505 1481, 63, 1117, 1118, 1450, 437, 110, 1122, 1123, 55,
2506 60, 57, 58, 1148, 110, 1496, 448, 1148, 63, 110,
2507 113, 111, 433, 434, 3, 4, 5, 110, 7, 8,
2508 9, 110, 95, 113, 89, 1148, 48, 110, 1148, 3,
2509 4, 5, 1243, 1244, 113, 1089, 110, 60, 113, 1164,
2510 110, 110, 110, 1144, 111, 1026, 110, 1148, 37, 111,
2511 1233, 1234, 65, 1085, 1086, 1087, 1088, 1089, 1112, 65,
2512 1066, 1093, 60, 1148, 1209, 60, 55, 110, 57, 58,
2513 59, 110, 493, 94, 1219, 496, 94, 94, 1110, 1111,
2514 1112, 55, 94, 57, 58, 1091, 1209, 111, 113, 1209,
2515 110, 512, 513, 8, 1148, 110, 110, 1297, 1223, 3,
2516 4, 5, 110, 1209, 113, 526, 110, 110, 1301, 1141,
2517 1303, 81, 82, 83, 84, 85, 105, 106, 107, 1302,
2518 1303, 3, 4, 5, 1209, 106, 107, 1108, 1418, 111,
2519 110, 110, 3, 4, 5, 6, 65, 1262, 1144, 110,
2520 1323, 1324, 1325, 110, 1450, 1421, 1422, 110, 110, 110,
2521 4, 5, 1297, 57, 58, 1209, 110, 1302, 110, 1304,
2522 3, 4, 5, 584, 1196, 1197, 1311, 1199, 1379, 63,
2523 113, 42, 48, 110, 1297, 57, 58, 1297, 49, 110,
2524 110, 1304, 1303, 97, 1304, 34, 57, 58, 1311, 110,
2525 110, 1311, 61, 110, 48, 63, 63, 110, 1304, 110,
2526 110, 55, 61, 57, 58, 1311, 1380, 113, 1391, 1392,
2527 81, 9, 1297, 61, 57, 58, 1341, 71, 89, 1304,
2528 16, 1421, 1422, 61, 94, 1206, 1311, 81, 106, 107,
2529 3, 4, 5, 94, 61, 109, 94, 91, 1380, 99,
2530 94, 95, 94, 1297, 61, 17, 61, 1421, 1422, 1423,
2531 1304, 11, 61, 110, 110, 110, 61, 1311, 1451, 110,
2532 94, 703, 1473, 60, 1409, 1410, 39, 40, 1413, 42,
2533 110, 3, 4, 5, 61, 7, 8, 9, 1423, 1421,
2534 1422, 1423, 55, 65, 57, 58, 1409, 1410, 110, 1409,
2535 1413, 1436, 61, 1413, 1439, 737, 11, 1442, 1421, 1422,
2536 61, 11, 110, 61, 0, 37, 408, 1413, 1453, 3,
2537 4, 5, 1293, 1436, 1497, 0, 1439, 0, 2, 1442,
2538 353, 1466, 1442, 160, 1409, 57, 58, 308, 1413, 1450,
2539 1453, 886, 1434, 1453, 160, 731, 1442, 725, 759, 3,
2540 4, 5, 1099, 1466, 93, 138, 1466, 1453, 1380, 1405,
2541 1495, 1545, 279, 1498, 1302, 1409, 1410, 1442, 666, 1413,
2542 1466, 55, 872, 57, 58, 59, 877, 1348, 1453, 27,
2543 28, 1127, 1495, 220, 32, 1498, 957, 994, 1498, 725,
2544 731, 1466, 1436, 1146, 609, 1439, 870, 559, 1442, 1421,
2545 1422, 1423, 1498, 57, 58, 59, 4, 182, 9, 1453,
2546 1545, 12, 60, 61, 123, 1304, 14, 65, 1533, 325,
2547 1210, 1459, 1466, 1498, 3, 4, 5, 25, 3, 4,
2548 5, 6, 1545, 31, 32, 1545, 34, 1456, 36, 1481,
2549 308, 1518, 380, 41, 855, 856, 1520, 48, 940, 1545,
2550 -1, 1495, 423, 1219, 1498, -1, 54, -1, 56, 60,
2551 -1, 62, 63, -1, 65, -1, 64, 42, -1, -1,
2552 1545, -1, -1, 71, -1, 76, -1, 78, 57, 58,
2553 55, 892, 57, 58, 82, 83, 61, -1, 426, -1,
2554 -1, -1, -1, 94, 95, 81, 71, 98, 3, 4,
2555 5, 1545, -1, 4, 5, -1, 81, 105, 9, 110,
2556 -1, 419, 380, -1, 89, -1, -1, -1, 426, 94,
2557 931, -1, 493, -1, -1, 496, -1, -1, -1, 500,
2558 128, -1, 964, 965, -1, 133, -1, 135, -1, -1,
2559 -1, 139, 513, -1, 142, 143, -1, 48, 146, 147,
2560 148, -1, 57, 58, 55, 526, 57, 58, 426, 530,
2561 -1, 993, 160, -1, -1, -1, -1, -1, 154, -1,
2562 71, -1, 3, 4, 5, 6, -1, 175, 176, 177,
2563 81, -1, -1, 491, -1, 556, -1, 173, -1, -1,
2564 91, 562, -1, 94, 95, -1, -1, -1, -1, -1,
2565 186, -1, -1, -1, -1, -1, 204, -1, 4, 5,
2566 -1, 42, -1, 9, -1, 419, -1, 3, 4, 5,
2567 6, 219, 426, -1, -1, 493, 57, 58, 496, 227,
2568 -1, -1, 500, 501, 502, 503, 504, -1, -1, 577,
2569 -1, 239, -1, -1, -1, 513, 584, 555, -1, 557,
2570 558, -1, 48, -1, -1, -1, 42, -1, 526, 55,
2571 -1, 57, 58, -1, -1, -1, 12, -1, -1, 55,
2572 -1, 57, 58, -1, -1, 71, 584, 1088, 1089, 277,
2573 278, 27, 28, 591, -1, 81, 32, 491, -1, -1,
2574 558, -1, -1, -1, -1, 91, -1, 48, 94, 95,
2575 1111, 1112, 48, 89, -1, -1, -1, 1139, 1140, 577,
2576 1142, 1143, -1, 1145, 60, 61, 584, 63, -1, 65,
2577 -1, -1, -1, 321, -1, -1, -1, 325, -1, 327,
2578 328, 329, -1, -1, -1, -1, 87, 88, -1, -1,
2579 338, 92, 93, 94, 95, 683, -1, -1, 94, 95,
2580 -1, 555, 98, 557, 558, 353, 3, 4, 5, -1,
2581 7, 8, 9, -1, 110, 4, 5, -1, 7, 8,
2582 9, -1, -1, 12, -1, 14, 374, -1, -1, -1,
2583 -1, -1, 380, -1, -1, 383, 384, 591, -1, -1,
2584 29, -1, 31, 32, -1, -1, 394, -1, 37, 397,
2585 -1, 1233, 1234, 741, 402, -1, -1, 46, 746, -1,
2586 57, 58, -1, -1, -1, 683, 55, -1, 57, 58,
2587 -1, -1, -1, -1, 7, 8, 9, -1, -1, -1,
2588 428, 14, 430, -1, 432, 433, 434, -1, -1, -1,
2589 438, -1, 3, 4, 5, 443, 7, -1, 446, 32,
2590 436, 759, 823, -1, 37, 441, 4, 5, -1, 98,
2591 8, 9, -1, 46, 462, -1, 14, -1, -1, -1,
2592 31, -1, -1, 741, -1, -1, -1, 38, 746, -1,
2593 -1, 29, 468, 31, -1, 856, -1, 473, -1, 37,
2594 -1, 1323, 1324, 1325, 55, -1, 57, 58, 46, 485,
2595 486, -1, 488, 501, 502, 503, 504, 55, -1, 57,
2596 58, 819, -1, -1, 852, -1, -1, -1, 856, -1,
2597 -1, -1, -1, -1, 832, -1, 834, -1, 836, 72,
6a88a0c0 2598 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
cf776105
JM
2599 83, 84, 85, 7, 8, 9, 94, 815, 886, -1,
2600 14, -1, -1, -1, 892, -1, -1, -1, -1, 1391,
2601 1392, 559, -1, 561, -1, -1, -1, -1, 32, 1380,
2602 -1, 879, -1, 37, 572, -1, 574, 575, 846, 577,
2603 -1, 952, 46, -1, 852, -1, 584, -1, 856, -1,
2604 588, -1, -1, 931, 580, 581, -1, 61, -1, 585,
2605 -1, -1, -1, -1, 602, 913, 7, 8, 9, -1,
2606 -1, 1422, 1423, 14, -1, 819, -1, -1, 886, -1,
2607 888, 959, -1, 931, 892, -1, -1, -1, 832, -1,
2608 834, 32, 836, 971, -1, -1, 37, -1, -1, 637,
2609 638, 639, 640, 641, 642, 46, -1, 4, 5, -1,
2610 -1, 8, 9, -1, -1, -1, -1, 14, 3, 4,
2611 5, 6, -1, 931, 9, 1497, -1, -1, 1006, -1,
2612 1008, -1, 29, -1, 31, 879, -1, 945, -1, -1,
2613 37, 679, -1, -1, 952, 683, -1, -1, -1, 46,
2614 -1, 959, 690, 691, -1, 693, -1, 42, 55, -1,
2615 57, 58, 59, 971, -1, -1, -1, -1, -1, 913,
2616 55, -1, 57, 58, 79, 80, 81, 82, 83, 84,
2617 85, -1, 720, -1, -1, 723, 71, 725, -1, -1,
2618 -1, -1, 730, 731, 732, -1, 81, 94, 1006, -1,
2619 1008, 1112, -1, 741, 89, -1, -1, -1, 746, 94,
2620 -1, 1089, -1, -1, -1, 753, 754, 755, -1, -1,
2621 -1, 747, -1, 749, -1, -1, -1, 765, -1, 327,
2622 328, 329, -1, -1, 1112, 3, 4, 5, 6, 7,
2623 8, 9, -1, -1, -1, -1, 14, -1, -1, 1160,
2624 1161, 1162, 1163, 1101, -1, 1103, -1, 1105, -1, -1,
2625 1171, 29, -1, 31, 32, -1, -1, -1, -1, 37,
2626 -1, -1, -1, -1, 42, -1, -1, 815, 46, -1,
2627 -1, 1089, -1, -1, -1, -1, -1, 55, -1, 57,
2628 58, -1, -1, 61, -1, 821, 822, -1, 824, 837,
2629 -1, 839, -1, 71, 1112, -1, -1, -1, 846, -1,
2630 -1, -1, 850, 81, 852, -1, 854, 855, 856, 4,
2631 -1, 89, -1, 861, -1, 851, 94, -1, -1, 14,
2632 77, 78, 79, 80, 81, 82, 83, 84, 85, 24,
2633 25, -1, -1, -1, -1, 1193, 31, 32, 886, 34,
2634 888, 36, 890, 891, 892, -1, 41, 1101, -1, 1103,
2635 -1, 1105, 3, 4, 5, 6, -1, -1, 894, 54,
2636 -1, 56, -1, -1, 3, 4, 5, 6, -1, 64,
2637 9, 1292, -1, -1, -1, -1, 71, -1, -1, -1,
2638 -1, -1, -1, 931, -1, -1, -1, -1, 83, -1,
2639 -1, 42, -1, -1, -1, -1, -1, 945, -1, -1,
2640 -1, 1219, -1, 42, 55, -1, 57, 58, -1, -1,
2641 -1, 959, 63, -1, -1, -1, 55, -1, 57, 58,
2642 71, -1, 958, 971, -1, -1, -1, -1, -1, -1,
2643 81, -1, 71, 128, 970, -1, 984, -1, 89, 1193,
2644 135, -1, 81, 94, 139, 1366, 994, -1, 143, -1,
2645 89, 146, 147, 148, -1, 94, -1, -1, 1006, -1,
2646 1008, -1, -1, 698, -1, 160, 574, 575, -1, -1,
2647 -1, -1, -1, 4, 5, -1, 7, 8, 9, -1,
2648 175, 176, 177, 14, -1, -1, -1, -1, 1409, 1410,
2649 -1, -1, 1040, 1041, -1, 1043, -1, -1, 29, -1,
2650 31, 32, 1423, -1, -1, 740, 37, -1, -1, 204,
2651 745, 327, 328, 329, -1, 46, -1, -1, 1439, 1055,
2652 -1, -1, 1380, -1, 55, -1, 57, 58, -1, 637,
2653 -1, 639, 640, -1, 642, -1, -1, 1085, 1086, 1087,
2654 1088, 1089, -1, -1, 239, 1093, -1, -1, 1436, 3,
2655 4, 5, 6, -1, -1, 9, 1092, -1, -1, -1,
2656 -1, -1, 1110, 1111, 1112, -1, -1, -1, -1, -1,
2657 -1, 679, 1493, -1, 1495, -1, -1, 7, 8, 9,
2658 -1, -1, 277, 278, 14, -1, -1, -1, 42, -1,
2659 -1, -1, -1, 1141, 48, -1, 1517, -1, 1146, -1,
2660 1148, 55, 32, 57, 58, 1423, -1, 37, -1, -1,
2661 1531, -1, 847, -1, 849, 1151, 46, 71, 1436, 1155,
2662 -1, -1, 3, 4, 5, 6, 321, 81, 9, -1,
2663 325, 61, 327, 328, 329, 89, -1, 91, -1, 334,
2664 94, 95, -1, 338, -1, -1, -1, -1, 1196, 1197,
2665 -1, 1199, 1188, -1, -1, -1, -1, 765, 353, -1,
2666 -1, 42, -1, -1, -1, -1, -1, 48, -1, -1,
2667 -1, 1219, -1, -1, 55, -1, 57, 58, -1, -1,
2668 -1, -1, -1, -1, -1, 380, -1, -1, 383, 384,
2669 71, -1, 1228, -1, -1, -1, 1232, -1, -1, 394,
2670 81, -1, 397, -1, -1, -1, -1, 402, 89, -1,
2671 91, -1, -1, 94, 95, -1, -1, -1, 1254, 1255,
2672 -1, -1, -1, 1, -1, 3, 4, 5, 6, 837,
2673 8, 839, -1, 428, -1, 430, -1, 432, 433, 434,
2674 -1, -1, 850, 438, -1, -1, 854, 855, 443, -1,
2675 -1, 446, -1, 1301, 1302, 1303, -1, -1, 574, 575,
2676 -1, 577, -1, -1, 42, -1, 461, 462, 584, -1,
2677 1005, 49, 1007, -1, -1, -1, -1, 55, -1, 57,
2678 58, -1, 890, 891, -1, -1, -1, -1, -1, -1,
2679 -1, -1, -1, -1, -1, 3, 4, 5, 6, 3,
2680 4, 5, 6, 7, 8, 9, 501, 502, 503, 504,
2681 14, 89, -1, -1, -1, -1, 3, 4, 5, 6,
2682 -1, 637, -1, 639, 640, 1060, 642, -1, 32, -1,
2683 -1, -1, 1380, 37, 42, -1, -1, -1, 42, -1,
2684 -1, 49, 46, -1, 48, -1, -1, -1, -1, 57,
2685 58, 55, -1, 57, 58, 42, -1, -1, -1, -1,
2686 -1, -1, 49, 679, 559, -1, 561, 71, -1, -1,
2687 57, 58, -1, 1421, 1422, 1423, -1, 81, -1, 574,
2688 575, 89, 577, -1, -1, 89, -1, 91, 1436, 584,
2689 94, 95, -1, -1, 81, -1, 1131, -1, -1, -1,
2690 1135, 596, 89, 1451, -1, -1, -1, 602, -1, -1,
2691 -1, -1, -1, 3, 4, 5, 6, -1, -1, 9,
2692 3, 4, 5, 6, -1, -1, -1, -1, -1, -1,
2693 -1, -1, -1, -1, 629, -1, -1, -1, -1, -1,
2694 -1, -1, 637, 638, 639, 640, 641, 642, -1, 765,
2695 -1, 1186, 42, -1, -1, -1, -1, -1, 48, 42,
2696 -1, -1, -1, -1, 659, 55, 49, 57, 58, -1,
2697 -1, -1, -1, -1, 57, 58, -1, 1085, 1086, 1087,
2698 1088, 71, -1, -1, 679, 1093, -1, -1, 683, -1,
2699 -1, 81, -1, -1, -1, 690, 691, -1, 693, 89,
2700 -1, 91, 1110, 1111, 94, 95, 89, -1, -1, -1,
2701 -1, 3, 4, 5, 6, -1, -1, 1252, 1253, -1,
2702 -1, 837, -1, 839, -1, 720, -1, -1, 723, -1,
2703 725, -1, -1, 1268, 850, 730, 731, 732, 854, 855,
2704 856, 3, 4, 5, 6, -1, 741, 9, -1, -1,
2705 42, 746, -1, 3, 4, 5, 6, 49, 753, 754,
2706 755, -1, -1, -1, -1, 57, 58, -1, -1, -1,
2707 765, -1, -1, -1, 890, 891, 892, -1, -1, -1,
2708 42, 1316, 1317, -1, -1, -1, 48, -1, 1196, 1197,
2709 -1, 1199, 42, 55, -1, 57, 58, 89, -1, 49,
2710 1335, 1336, -1, -1, -1, -1, -1, 57, 58, 71,
2711 -1, -1, -1, -1, -1, 931, -1, -1, -1, 81,
2712 815, -1, -1, -1, -1, -1, -1, 89, -1, 91,
2713 -1, 81, 94, 95, -1, 3, 4, 5, 6, 89,
2714 -1, -1, 837, -1, 839, -1, -1, -1, -1, -1,
2715 -1, 846, -1, -1, -1, 850, -1, 852, -1, 854,
2716 855, 856, -1, -1, -1, -1, 861, -1, -1, -1,
2717 -1, -1, -1, -1, 42, -1, -1, -1, -1, -1,
2718 -1, 49, -1, -1, -1, -1, -1, -1, 4, 57,
2719 58, 886, -1, 888, -1, 890, 891, 892, 1, -1,
2720 3, 4, 5, 6, 7, 8, 9, -1, -1, -1,
2721 -1, 14, -1, 81, -1, 31, 32, -1, 34, -1,
2722 36, 89, -1, -1, -1, 41, 29, -1, 31, 32,
2723 33, -1, -1, -1, 37, 38, 931, -1, 54, 42,
2724 56, -1, -1, 46, 47, -1, 49, -1, -1, -1,
2725 945, -1, 55, -1, 57, 58, -1, -1, 61, -1,
2726 63, -1, 957, 79, 959, -1, -1, -1, 71, 1085,
2727 1086, 1087, 1088, 1089, -1, -1, 971, 1093, 81, -1,
2728 -1, -1, -1, -1, -1, -1, 89, 3, 4, 5,
2729 6, 94, -1, 9, 1110, 1111, 1112, -1, -1, 994,
2730 -1, -1, -1, -1, -1, -1, -1, -1, 111, -1,
2731 -1, 1006, 128, 1008, -1, -1, 132, 133, -1, 135,
2732 -1, -1, -1, 139, -1, 141, 42, 143, -1, -1,
2733 146, 147, 148, -1, -1, -1, -1, -1, -1, 55,
2734 -1, 57, 58, -1, 160, 1040, 1041, -1, 1043, -1,
2735 -1, -1, -1, -1, -1, 71, -1, -1, -1, 175,
2736 176, 177, -1, -1, -1, 81, -1, -1, -1, 185,
2737 -1, -1, -1, 89, 3, 4, 5, 6, 94, -1,
2738 1196, 1197, -1, 1199, -1, -1, -1, -1, 204, -1,
2739 1085, 1086, 1087, 1088, 1089, -1, -1, -1, 1093, -1,
2740 -1, -1, -1, -1, 1099, -1, -1, -1, -1, -1,
2741 -1, -1, -1, 42, -1, 1110, 1111, 1112, -1, 48,
2742 -1, -1, -1, 239, -1, -1, 55, -1, 57, 58,
2743 -1, -1, 1127, -1, -1, -1, -1, -1, -1, -1,
2744 -1, -1, 71, -1, -1, -1, 1141, -1, -1, -1,
2745 -1, 1146, 81, 1148, -1, -1, -1, -1, -1, -1,
2746 89, -1, 91, -1, -1, 94, 95, -1, -1, -1,
2747 -1, -1, -1, -1, -1, -1, -1, 3, 4, 5,
2748 6, -1, 1, 9, 3, 4, 5, 6, 7, 8,
2749 9, -1, 308, -1, -1, 14, -1, -1, -1, -1,
2750 -1, 1196, 1197, -1, 1199, -1, -1, -1, -1, 325,
2751 29, -1, 31, 32, 33, -1, 42, 333, 37, 38,
2752 -1, -1, 338, 42, 1219, -1, -1, 46, 47, 55,
2753 49, 57, 58, -1, -1, -1, 55, 353, 57, 58,
2754 -1, -1, 61, -1, 63, 71, 4, 5, -1, 7,
2755 8, 9, 71, -1, 12, 81, 14, -1, 374, -1,
2756 -1, -1, 81, 89, -1, -1, -1, 383, 94, -1,
2757 89, 29, -1, 31, 32, 94, -1, -1, 394, 37,
2758 -1, 397, -1, -1, -1, -1, 402, -1, 46, -1,
2759 48, -1, 111, -1, -1, -1, -1, 55, -1, 57,
2760 58, -1, -1, -1, -1, -1, 1301, 1302, 1303, -1,
2761 -1, -1, 428, 71, 430, -1, 432, 433, 434, -1,
2762 -1, -1, 438, 81, -1, -1, -1, 443, -1, -1,
2763 446, 4, -1, 91, -1, -1, 94, 95, -1, -1,
2764 98, -1, -1, -1, -1, -1, 462, -1, -1, -1,
2765 -1, -1, -1, -1, 3, 4, 5, 6, 31, 32,
2766 9, 34, -1, 36, -1, 4, 5, -1, 41, 8,
2767 9, -1, -1, -1, -1, 14, -1, 493, -1, -1,
2768 496, 54, -1, 56, -1, 1380, -1, -1, -1, -1,
2769 29, -1, 31, 42, -1, 511, 512, 513, 37, -1,
2770 -1, -1, -1, -1, -1, -1, 55, 46, 57, 58,
2771 526, -1, -1, -1, -1, -1, 55, -1, 57, 58,
2772 -1, -1, 71, -1, -1, -1, 1421, 1422, 1423, -1,
2773 -1, -1, 81, -1, -1, -1, -1, -1, 4, 5,
2774 89, 1436, 8, 9, -1, 94, -1, -1, 14, -1,
2775 -1, -1, -1, -1, -1, 571, 1451, -1, 3, 4,
2776 5, 6, 135, 29, 9, 31, 139, -1, 584, -1,
2777 143, 37, -1, 146, 147, 148, -1, -1, -1, -1,
2778 46, -1, 48, -1, -1, -1, 602, 160, -1, 55,
2779 -1, 57, 58, -1, -1, -1, -1, 42, -1, -1,
2780 -1, -1, 175, 176, 177, 71, -1, -1, -1, -1,
2781 55, -1, 57, 58, -1, 81, -1, -1, -1, -1,
2782 -1, 637, 638, 639, 640, 91, 71, -1, 94, 95,
2783 -1, 204, -1, -1, -1, -1, 81, -1, -1, -1,
2784 -1, -1, -1, -1, 89, -1, -1, -1, 1, 94,
2785 3, 4, 5, 6, 7, 8, 9, -1, -1, -1,
2786 -1, 14, -1, 679, -1, -1, 239, 683, -1, -1,
2787 -1, -1, -1, -1, 690, 691, 29, 693, 31, 32,
2788 33, -1, -1, -1, 37, 38, -1, -1, -1, 42,
2789 -1, -1, -1, 46, 47, -1, 49, -1, -1, -1,
2790 -1, -1, 55, -1, 57, 58, -1, 723, 61, 725,
2791 63, -1, -1, -1, 730, 731, 732, -1, 71, -1,
2792 -1, 3, 4, 5, 6, 7, 8, 9, 81, -1,
2793 12, -1, 14, -1, -1, -1, 89, -1, -1, -1,
2794 -1, 94, -1, 759, -1, -1, -1, 29, -1, 31,
2795 32, -1, -1, -1, -1, 37, -1, -1, 111, -1,
2796 42, 334, -1, -1, 46, 338, 48, -1, -1, -1,
2797 -1, -1, -1, 55, -1, 57, 58, -1, -1, -1,
2798 -1, 4, 5, -1, -1, 8, 9, -1, -1, 71,
2799 -1, 14, -1, -1, -1, -1, 87, -1, 89, 81,
2800 91, -1, -1, -1, -1, -1, -1, 89, -1, 91,
2801 383, -1, 94, 95, 37, -1, 98, -1, -1, -1,
2802 -1, 394, -1, 46, 397, 48, -1, -1, -1, 402,
2803 -1, -1, 55, -1, 57, 58, -1, -1, 854, 855,
2804 856, 12, -1, -1, 860, 136, -1, 138, 71, -1,
2805 -1, -1, -1, -1, -1, 428, -1, 430, 81, 432,
2806 433, 434, -1, -1, -1, 438, -1, -1, 91, -1,
2807 443, 94, 95, 446, 890, 891, 892, -1, -1, -1,
2808 -1, 897, -1, -1, -1, -1, -1, -1, -1, 462,
2809 -1, -1, 63, 64, 65, 66, 67, 68, 69, 70,
2810 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
2811 81, 82, 83, 84, 85, 931, -1, -1, -1, -1,
2812 -1, -1, -1, 1, -1, 3, 4, 5, 6, 7,
2813 8, 9, 10, 11, -1, 13, 14, 15, -1, 17,
2814 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
2815 28, 29, 30, 31, 32, 33, -1, 35, 36, 37,
2816 -1, 39, 40, 41, 42, 43, 44, 983, 46, -1,
2817 -1, -1, 50, 51, 52, 53, 54, 55, 994, 57,
2818 58, 59, -1, 61, 62, -1, -1, -1, -1, -1,
2819 68, -1, -1, 71, -1, -1, -1, -1, -1, 572,
2820 -1, 79, 80, 81, -1, -1, -1, -1, 299, 87,
2821 88, 89, -1, -1, -1, -1, 94, -1, 96, -1,
2822 -1, -1, -1, -1, -1, -1, -1, -1, -1, 602,
2823 -1, -1, -1, 111, 112, 3, 4, 5, 6, -1,
2824 -1, 9, -1, -1, -1, -1, 337, -1, -1, -1,
2825 1066, 4, 5, -1, 7, 8, 9, -1, -1, 12,
2826 34, 14, -1, -1, 637, 638, 639, 640, -1, 1085,
2827 1086, 1087, 1088, 1089, 42, 1091, 29, 1093, 31, 32,
2828 54, -1, -1, -1, 37, -1, -1, 55, -1, 57,
2829 58, -1, -1, 46, 1110, 1111, 1112, -1, -1, -1,
2830 -1, -1, 55, 71, 57, 58, 679, -1, -1, -1,
2831 683, -1, -1, 81, -1, -1, -1, 690, 691, -1,
2832 693, 89, -1, -1, -1, 1141, 94, 418, 419, -1,
2833 1146, -1, 1148, -1, 1, 426, 3, 4, 5, 6,
2834 7, 8, 9, -1, 4, 5, -1, 14, 8, 9,
2835 723, -1, 725, -1, 14, -1, -1, 730, 731, 732,
2836 -1, -1, 29, -1, 31, 32, -1, -1, -1, 29,
2837 37, 31, 146, 147, 148, 42, -1, 37, -1, 46,
2838 1196, 1197, 49, 1199, -1, -1, 46, -1, 55, -1,
2839 57, 58, -1, -1, 61, 55, -1, 57, 58, 490,
2840 491, 175, 176, 177, 71, -1, -1, -1, -1, -1,
2841 -1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
73b0fce8 2842 -1, -1, 89, -1, -1, -1, -1, 94, -1, -1,
cf776105
JM
2843 204, -1, 523, -1, 525, -1, -1, 528, 529, -1,
2844 531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
2845 541, 542, 543, 544, 545, 546, 547, 548, 549, -1,
2846 -1, -1, -1, -1, 555, -1, 557, 558, 69, 70,
2847 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
2848 81, 82, 83, 84, 85, 1301, 1302, 1303, 861, -1,
2849 -1, -1, -1, 584, -1, -1, -1, -1, -1, -1,
2850 591, -1, -1, 1, 278, 3, 4, 5, 6, 7,
2851 8, 9, -1, -1, -1, -1, 14, 890, 891, 892,
2852 611, 612, -1, -1, -1, -1, -1, -1, -1, -1,
2853 -1, 29, -1, 31, 32, 33, -1, -1, -1, 37,
2854 38, -1, -1, -1, 42, -1, -1, -1, 46, 47,
2855 -1, 49, -1, 327, 328, 329, -1, 55, 931, 57,
2856 58, -1, -1, 61, 1380, 63, -1, -1, -1, -1,
2857 -1, -1, -1, 71, -1, 666, -1, -1, -1, -1,
2858 -1, -1, -1, 81, -1, -1, -1, 3, 4, 5,
2859 6, 89, -1, 9, 4, 5, 94, -1, 8, 9,
2860 -1, -1, -1, -1, 14, 1421, 1422, 1423, -1, 383,
2861 -1, -1, -1, 111, -1, -1, -1, -1, -1, -1,
2862 -1, 994, -1, -1, -1, -1, 42, 37, -1, -1,
2863 -1, 722, -1, -1, -1, 1451, 46, -1, 48, 55,
2864 -1, 57, 58, -1, -1, 55, -1, 57, 58, -1,
2865 -1, 742, 743, 744, 428, 71, 430, -1, 432, 433,
2866 434, 71, -1, -1, 438, 81, -1, -1, 759, 443,
2867 -1, 81, 446, 89, -1, -1, -1, -1, 94, -1,
2868 -1, 91, -1, -1, 94, 95, -1, -1, -1, -1,
2869 781, -1, -1, -1, 3, 4, 5, 6, -1, -1,
2870 -1, -1, -1, 3, 4, 5, 6, -1, -1, -1,
2871 -1, -1, 1085, 1086, 1087, 1088, 1089, -1, -1, -1,
2872 1093, -1, -1, -1, -1, -1, -1, 818, 819, -1,
2873 -1, -1, -1, 42, -1, -1, -1, 1110, 1111, 1112,
2874 -1, 832, 42, 834, -1, 836, 55, -1, 57, 58,
2875 -1, -1, -1, -1, 63, 55, -1, 57, 58, -1,
2876 -1, -1, 71, 63, -1, -1, -1, -1, 1141, -1,
2877 -1, 71, 81, 1146, -1, 1148, -1, -1, 869, -1,
2878 89, 81, -1, -1, -1, 94, -1, 561, 879, 89,
2879 -1, -1, -1, -1, 94, -1, -1, -1, 889, -1,
2880 574, 575, -1, 577, 3, 4, 5, 6, -1, -1,
2881 584, 902, -1, -1, -1, -1, -1, -1, -1, -1,
2882 54, -1, 913, 1196, 1197, -1, 1199, -1, 602, -1,
73b0fce8 2883 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
cf776105
JM
2884 931, -1, -1, 42, -1, 79, -1, -1, 82, -1,
2885 -1, -1, -1, -1, -1, -1, 55, -1, 57, 58,
2886 -1, -1, -1, 637, -1, 639, 640, -1, 642, 103,
2887 -1, 105, 71, -1, -1, -1, -1, -1, -1, -1,
2888 -1, -1, 81, 974, -1, -1, -1, -1, -1, -1,
2889 89, -1, -1, -1, -1, 94, -1, -1, -1, -1,
2890 -1, -1, -1, -1, -1, 679, 997, -1, -1, -1,
2891 -1, -1, -1, -1, -1, -1, 690, 691, -1, 693,
2892 3, 4, 5, 6, 7, 8, 9, -1, 1301, 1302,
2893 1303, 14, -1, -1, 1025, 1026, -1, -1, 1029, -1,
2894 -1, 175, 176, 177, -1, -1, 29, -1, 31, 32,
2895 -1, 185, -1, -1, 37, -1, 730, 4, -1, 42,
2896 -1, -1, -1, 46, -1, -1, 3, 4, 5, 6,
2897 204, -1, 55, -1, 57, 58, -1, -1, 61, 753,
2898 754, 755, -1, -1, 31, 32, -1, -1, 71, 36,
2899 -1, 765, -1, 227, 41, -1, -1, -1, 81, 3,
2900 4, 5, 6, -1, -1, 42, 89, 1380, 242, 56,
2901 1101, 94, 1103, -1, 1105, -1, -1, 1108, 55, -1,
2902 57, 58, -1, -1, -1, -1, 1117, 1118, -1, -1,
2903 -1, 1122, 1123, -1, 71, -1, -1, -1, 42, -1,
2904 -1, -1, -1, -1, 81, -1, 1137, 1138, 1421, 1422,
2905 1423, 55, 89, 57, 58, -1, -1, 94, -1, -1,
2906 -1, -1, -1, 837, -1, 839, -1, 71, -1, -1,
2907 -1, -1, -1, 1164, -1, 1166, 850, 81, 1451, -1,
2908 854, 855, 856, -1, -1, 89, -1, -1, 135, -1,
2909 94, -1, 139, -1, -1, -1, 143, -1, -1, 333,
2910 334, -1, 1193, -1, -1, -1, -1, -1, -1, -1,
2911 -1, -1, -1, 160, -1, -1, 890, 891, 892, -1,
2912 -1, -1, -1, -1, -1, -1, -1, -1, 175, 176,
2913 -1, -1, 1223, 1, -1, 3, 4, 5, 6, 7,
2914 8, 9, -1, -1, -1, -1, 14, -1, 1239, 383,
2915 -1, -1, -1, -1, -1, -1, -1, 931, -1, -1,
2916 -1, 29, -1, 31, 32, 14, -1, -1, -1, 37,
2917 -1, 1262, -1, -1, 42, 24, 25, -1, 46, 47,
2918 -1, 49, 31, 32, -1, 34, -1, 55, -1, 57,
2919 58, -1, 239, -1, 428, 63, 430, 1288, 432, 433,
2920 434, -1, -1, 71, 438, -1, -1, -1, -1, 443,
2921 -1, -1, 446, 81, -1, 64, -1, -1, -1, 4,
2922 5, 89, 7, 8, 9, -1, 94, -1, -1, 14,
2923 1321, 1322, -1, -1, -1, -1, -1, -1, -1, 1330,
2924 -1, -1, -1, -1, 29, -1, 31, 32, -1, -1,
2925 1341, -1, 37, -1, -1, -1, -1, -1, -1, -1,
2926 -1, 46, -1, -1, 49, -1, 1040, 1041, -1, 1043,
2927 55, -1, 57, 58, 123, -1, 125, -1, -1, 128,
2928 -1, -1, -1, 132, 133, -1, -1, -1, -1, 1380,
2929 139, 338, 141, 142, 143, -1, -1, 146, 147, 148,
956d6950 2930 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
cf776105
JM
2931 -1, 1085, 1086, 1087, 1088, 1089, -1, -1, -1, 1093,
2932 1411, -1, -1, 3, 4, 5, 6, 7, 8, 9,
2933 -1, -1, 12, -1, 14, -1, 1110, 1111, 1112, -1,
2934 -1, -1, -1, -1, -1, -1, -1, 394, -1, 29,
2935 397, 31, 32, 587, 588, 402, -1, 37, -1, -1,
2936 -1, -1, 42, -1, -1, -1, 46, 1141, 602, 218,
2937 219, -1, -1, -1, -1, 55, -1, 57, 58, -1,
2938 -1, 428, -1, 430, -1, -1, -1, -1, -1, -1,
2939 239, 71, -1, -1, -1, -1, 443, -1, -1, -1,
2940 -1, 81, -1, 637, -1, 639, 640, -1, -1, 89,
2941 -1, -1, -1, -1, 94, 462, -1, -1, -1, -1,
2942 -1, -1, 1196, 1197, -1, 1199, -1, -1, -1, 278,
73b0fce8 2943 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
cf776105
JM
2944 84, 85, 1533, -1, -1, 679, -1, -1, -1, -1,
2945 -1, -1, -1, -1, -1, -1, 690, 691, -1, 693,
2946 -1, -1, 1, -1, 3, 4, 5, 6, 7, 8,
2947 9, -1, -1, -1, -1, 14, 325, -1, 327, 328,
2948 -1, -1, -1, 717, -1, -1, -1, -1, 27, 28,
2949 29, -1, 31, 32, 33, -1, 730, -1, 37, -1,
2950 -1, -1, -1, 42, 353, -1, 45, 46, 47, -1,
2951 49, -1, -1, -1, -1, -1, 55, -1, 57, 58,
2952 -1, -1, 61, -1, -1, 374, -1, 1301, -1, 1303,
2953 -1, -1, 71, 3, 4, 5, 6, 7, 8, 9,
2954 -1, 390, 81, -1, 14, 394, -1, -1, 397, -1,
2955 89, -1, -1, 402, -1, 94, -1, -1, -1, -1,
2956 -1, 100, 32, -1, -1, -1, -1, 37, -1, -1,
2957 -1, -1, 42, -1, -1, -1, 46, -1, 48, -1,
2958 -1, -1, -1, -1, -1, 55, -1, 57, 58, -1,
2959 -1, 638, -1, -1, -1, -1, -1, -1, -1, -1,
2960 -1, 71, -1, -1, -1, -1, 1380, -1, -1, -1,
2961 459, 81, 461, -1, -1, -1, -1, -1, -1, 89,
2962 -1, 91, -1, -1, 94, 95, 860, 861, 862, -1,
2963 -1, -1, -1, -1, -1, -1, 683, -1, 487, -1,
2964 -1, -1, -1, 690, 691, -1, 693, 1421, 1422, 1423,
2965 -1, -1, -1, -1, -1, -1, 890, 891, 892, -1,
2966 -1, -1, -1, 897, -1, -1, -1, -1, -1, -1,
2967 -1, -1, -1, -1, -1, -1, 723, 1451, 725, -1,
2968 -1, -1, -1, 730, 731, 732, -1, -1, -1, -1,
2969 -1, -1, -1, -1, -1, -1, -1, 931, -1, -1,
73b0fce8 2970 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
cf776105
JM
2971 74, 75, 561, 77, 78, 79, 80, 81, 82, 83,
2972 84, 85, 571, 572, -1, 574, 575, -1, -1, -1,
2973 -1, -1, -1, -1, 1, -1, 3, 4, 5, 6,
2974 -1, 8, 9, 10, 11, -1, 13, 14, -1, 983,
2975 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2976 -1, -1, 29, 30, 31, -1, 33, -1, 35, 36,
2977 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
2978 629, -1, -1, 50, 51, 52, 53, 54, 55, -1,
2979 57, 58, 641, -1, -1, 62, 63, -1, -1, -1,
2980 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
2981 659, -1, 79, 80, 81, -1, -1, -1, -1, -1,
2982 87, 88, 89, -1, -1, -1, -1, 94, -1, -1,
2983 -1, -1, 1066, -1, -1, -1, -1, -1, -1, -1,
2984 -1, -1, -1, 890, 891, 112, -1, 32, -1, -1,
2985 -1, 1085, 1086, 1087, 1088, 1089, -1, 1091, -1, 1093,
2986 -1, -1, -1, -1, -1, -1, -1, -1, 717, -1,
2987 -1, 720, -1, -1, -1, -1, 1110, 1111, 1112, 64,
2988 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
2989 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
2990 85, -1, -1, -1, 753, 754, 755, 1141, -1, -1,
2991 -1, -1, -1, 60, -1, -1, 765, 64, 65, 66,
73b0fce8
KL
2992 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
2993 77, 78, 79, 80, 81, 82, 83, 84, 85, -1,
cf776105
JM
2994 -1, -1, -1, -1, -1, -1, -1, 994, 73, 74,
2995 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
2996 85, -1, 1196, 1197, 1, 1199, 3, 4, 5, 6,
2997 7, 8, 9, 10, 11, 12, 13, 14, -1, -1,
2998 -1, -1, -1, -1, -1, -1, -1, -1, 837, -1,
2999 839, -1, 29, 30, 31, 32, 33, -1, 35, 36,
3000 37, 850, 39, 40, 41, 42, 43, 44, -1, 46,
3001 -1, 48, -1, 50, 51, 52, 53, 54, 55, -1,
3002 57, 58, 59, -1, -1, 62, -1, -1, -1, -1,
3003 -1, 68, -1, -1, 71, -1, -1, -1, 1085, 1086,
3004 -1, -1, 79, 80, 81, -1, 1093, -1, -1, -1,
3005 87, 88, 89, -1, 91, -1, -1, 94, 95, -1,
3006 -1, 98, -1, -1, -1, -1, -1, 1301, -1, 1303,
3007 -1, -1, -1, -1, -1, 112, -1, 3, 4, 5,
3008 6, 7, 8, 9, 10, 11, 12, 13, 14, -1,
3009 -1, -1, -1, -1, 1141, -1, -1, -1, -1, 1146,
3010 -1, 1148, -1, 29, 30, 31, 32, 33, 957, 35,
73b0fce8 3011 36, 37, -1, 39, 40, 41, 42, 43, 44, -1,
cf776105
JM
3012 46, -1, 48, -1, 50, 51, 52, 53, 54, 55,
3013 -1, 57, 58, -1, -1, 984, 62, -1, -1, -1,
3014 -1, -1, 68, -1, -1, 71, 1380, -1, -1, 1196,
3015 1197, -1, 1199, 79, 80, 81, -1, -1, -1, -1,
3016 -1, 87, 88, 89, -1, 91, -1, -1, 94, 95,
3017 -1, -1, 98, -1, -1, -1, -1, -1, -1, -1,
3018 -1, -1, -1, -1, -1, -1, 112, 1421, 1422, 1423,
3019 -1, 1040, 1041, -1, 1043, -1, -1, -1, -1, 3,
3020 4, 5, 6, 7, 8, 9, -1, -1, -1, -1,
3021 14, -1, -1, -1, -1, -1, -1, 1451, -1, -1,
3022 -1, -1, -1, -1, -1, 29, -1, 31, 32, -1,
3023 -1, -1, -1, 37, -1, -1, -1, -1, 42, -1,
3024 -1, -1, 46, -1, 48, -1, -1, -1, -1, -1,
3025 1099, 55, -1, 57, 58, 1302, -1, 1, -1, 3,
3026 4, 5, 6, 7, 8, 9, -1, 71, 12, -1,
3027 14, -1, -1, -1, -1, -1, -1, 81, 1127, -1,
3028 -1, 25, -1, 27, 28, 89, -1, 91, 32, -1,
3029 94, 95, -1, 37, -1, 1144, -1, 1146, 42, -1,
3030 -1, -1, 46, -1, 48, -1, -1, -1, -1, -1,
3031 -1, 55, -1, 57, 58, 59, 60, 61, -1, 63,
3032 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
3033 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
3034 84, 85, -1, 87, 88, 89, -1, 91, 92, 93,
3035 94, 95, 96, -1, 98, 99, -1, -1, -1, -1,
3036 104, -1, -1, -1, -1, 109, 110, 111, 1, 113,
3037 3, 4, 5, 6, 7, 8, 9, 10, 11, -1,
3038 13, 14, 15, -1, 17, 18, 19, 20, 21, 22,
3039 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
3040 33, -1, 35, 36, 37, -1, 39, 40, 41, 42,
3041 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
3042 53, 54, 55, -1, 57, 58, 59, -1, 61, 62,
3043 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
3044 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
3045 -1, -1, -1, -1, 87, 88, 89, -1, -1, -1,
3046 -1, 94, 1, 96, 3, 4, 5, 6, 7, 8,
3047 9, 10, 11, 12, 13, 14, -1, -1, -1, 112,
73b0fce8 3048 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
cf776105
JM
3049 29, 30, 31, 32, 33, -1, 35, 36, 37, -1,
3050 39, 40, 41, 42, 43, 44, -1, 46, -1, 48,
3051 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
3052 59, -1, -1, 62, -1, -1, -1, -1, -1, 68,
3053 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3054 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
3055 89, -1, 91, -1, -1, 94, 95, -1, 1, 98,
3056 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
3057 13, 14, -1, 112, -1, -1, -1, -1, -1, -1,
3058 -1, -1, -1, -1, -1, -1, 29, 30, 31, 32,
3059 33, -1, 35, 36, 37, -1, 39, 40, 41, 42,
3060 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
3061 53, 54, 55, -1, 57, 58, -1, -1, -1, 62,
3062 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
3063 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
3064 -1, -1, -1, -1, 87, 88, 89, -1, -1, -1,
3065 -1, 94, -1, -1, -1, 98, -1, -1, -1, -1,
3066 -1, -1, -1, -1, -1, -1, -1, 110, 1, 112,
3067 3, 4, 5, 6, 7, 8, 9, 10, 11, -1,
3068 13, 14, -1, -1, -1, -1, -1, -1, -1, -1,
3069 -1, -1, -1, -1, -1, -1, 29, 30, 31, 32,
386b8a85 3070 33, -1, 35, 36, 37, -1, 39, 40, 41, 42,
956d6950 3071 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
cf776105 3072 53, 54, 55, -1, 57, 58, 59, -1, 61, 62,
386b8a85 3073 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
956d6950
JL
3074 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
3075 -1, -1, -1, -1, 87, 88, 89, -1, -1, -1,
73b0fce8 3076 1, 94, 3, 4, 5, 6, -1, 8, 9, 10,
cf776105
JM
3077 11, -1, 13, 14, -1, -1, -1, -1, -1, 112,
3078 -1, -1, -1, -1, -1, -1, -1, -1, 29, 30,
73b0fce8
KL
3079 31, -1, 33, -1, 35, 36, 37, -1, 39, 40,
3080 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
3081 51, 52, 53, 54, 55, -1, 57, 58, 59, -1,
3082 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
3083 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3084 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
cf776105 3085 -1, -1, -1, 94, 95, 1, -1, 3, 4, 5,
386b8a85 3086 6, -1, 8, 9, 10, 11, -1, 13, 14, -1,
cf776105 3087 111, 112, -1, -1, -1, 21, -1, -1, -1, -1,
956d6950 3088 -1, -1, -1, 29, 30, 31, -1, 33, -1, 35,
386b8a85
JM
3089 36, 37, -1, 39, 40, 41, 42, 43, 44, -1,
3090 46, -1, -1, -1, 50, 51, 52, 53, 54, 55,
3091 -1, 57, 58, 59, -1, -1, 62, -1, -1, -1,
3092 -1, -1, 68, -1, -1, 71, -1, -1, -1, -1,
3093 -1, -1, -1, 79, 80, 81, -1, -1, -1, -1,
956d6950
JL
3094 -1, 87, 88, 89, -1, -1, -1, 1, 94, 3,
3095 4, 5, 6, -1, 8, 9, 10, 11, -1, 13,
cf776105 3096 14, -1, -1, -1, -1, 111, 112, 21, -1, -1,
386b8a85
JM
3097 -1, -1, -1, -1, -1, 29, 30, 31, -1, 33,
3098 -1, 35, 36, 37, -1, 39, 40, 41, 42, 43,
3099 44, -1, 46, -1, -1, -1, 50, 51, 52, 53,
cf776105 3100 54, 55, -1, 57, 58, 59, -1, -1, 62, -1,
386b8a85
JM
3101 -1, -1, -1, -1, 68, -1, -1, 71, -1, -1,
3102 -1, -1, -1, -1, -1, 79, 80, 81, -1, -1,
3103 -1, -1, -1, 87, 88, 89, -1, -1, -1, 1,
3104 94, 3, 4, 5, 6, -1, 8, 9, 10, 11,
cf776105 3105 -1, 13, 14, -1, -1, -1, -1, 111, 112, -1,
386b8a85
JM
3106 -1, -1, -1, -1, -1, -1, -1, 29, 30, 31,
3107 -1, 33, -1, 35, 36, 37, -1, 39, 40, 41,
3108 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
73b0fce8 3109 52, 53, 54, 55, -1, 57, 58, 59, -1, -1,
956d6950 3110 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
386b8a85
JM
3111 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3112 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
cf776105
JM
3113 -1, -1, 94, 95, 1, -1, 3, 4, 5, 6,
3114 -1, 8, 9, 10, 11, -1, 13, 14, -1, -1,
3115 112, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3116 -1, -1, 29, 30, 31, -1, 33, -1, 35, 36,
3117 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
3118 -1, -1, -1, 50, 51, 52, 53, 54, 55, -1,
3119 57, 58, 59, -1, -1, 62, -1, -1, -1, -1,
3120 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
3121 -1, -1, 79, 80, 81, -1, -1, -1, -1, -1,
3122 87, 88, 89, -1, -1, -1, -1, 94, -1, -1,
3123 1, -1, 3, 4, 5, 6, 103, 8, 9, 10,
3124 11, -1, 13, 14, -1, 112, -1, -1, -1, -1,
3125 -1, -1, -1, -1, -1, -1, -1, -1, 29, 30,
3126 31, -1, 33, -1, 35, 36, 37, -1, 39, 40,
3127 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
3128 51, 52, 53, 54, 55, -1, 57, 58, 59, -1,
3129 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
3130 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3131 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
3132 -1, -1, 1, 94, 3, 4, 5, 6, -1, 8,
3133 9, 10, 11, -1, 13, 14, -1, -1, -1, -1,
3134 -1, 112, -1, -1, -1, -1, -1, -1, -1, -1,
3135 29, 30, 31, -1, 33, -1, 35, 36, 37, -1,
3136 39, 40, 41, 42, 43, 44, -1, 46, -1, -1,
3137 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
3138 59, -1, -1, 62, -1, -1, -1, -1, -1, 68,
3139 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3140 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
3141 89, -1, -1, -1, 1, 94, 3, 4, 5, 6,
3142 -1, 8, 9, 10, 11, -1, 13, 14, -1, -1,
3143 -1, -1, -1, 112, -1, -1, -1, -1, -1, -1,
3144 -1, -1, 29, 30, 31, -1, 33, -1, 35, 36,
3145 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
3146 -1, -1, -1, 50, 51, 52, 53, 54, 55, -1,
3147 57, 58, 59, -1, -1, 62, -1, -1, -1, -1,
3148 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
3149 -1, -1, 79, 80, 81, -1, -1, -1, -1, -1,
3150 87, 88, 89, -1, -1, -1, 1, 94, 3, 4,
3151 5, 6, -1, 8, 9, 10, 11, -1, 13, 14,
3152 -1, -1, -1, -1, -1, 112, -1, -1, -1, -1,
3153 -1, -1, -1, -1, 29, 30, 31, -1, 33, -1,
3154 35, 36, 37, -1, 39, 40, 41, 42, 43, 44,
3155 -1, 46, -1, -1, -1, 50, 51, 52, 53, 54,
3156 55, -1, 57, 58, -1, -1, 61, 62, -1, -1,
3157 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
3158 -1, -1, -1, -1, 79, 80, 81, -1, -1, -1,
3159 -1, -1, 87, 88, 89, -1, -1, -1, 1, 94,
3160 3, 4, 5, 6, -1, 8, 9, 10, 11, -1,
3161 13, 14, -1, -1, -1, -1, -1, 112, -1, -1,
3162 -1, -1, -1, -1, -1, -1, 29, 30, 31, -1,
3163 33, -1, 35, 36, 37, -1, 39, 40, 41, 42,
3164 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
3165 53, 54, 55, -1, 57, 58, -1, -1, -1, 62,
3166 -1, -1, -1, -1, -1, 68, 1, -1, 71, 4,
3167 5, -1, -1, 8, 9, -1, 79, 80, 81, 14,
3168 -1, -1, -1, -1, 87, 88, 89, -1, -1, -1,
3169 -1, 94, -1, -1, 29, -1, 31, -1, -1, -1,
3170 -1, -1, 37, -1, 39, 40, -1, 110, -1, 112,
3171 -1, 46, -1, 48, -1, -1, -1, -1, -1, -1,
3172 55, -1, 57, 58, -1, 60, -1, -1, -1, 64,
3173 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
3174 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
3175 -1, -1, 87, 88, 89, -1, -1, 92, -1, 1,
3176 95, 3, 4, 5, 6, -1, 8, 9, 10, 11,
3177 -1, 13, 14, -1, -1, -1, -1, 112, -1, -1,
3178 -1, -1, -1, -1, -1, -1, -1, 29, 30, 31,
3179 -1, 33, -1, 35, 36, 37, -1, 39, 40, 41,
3180 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
3181 52, 53, 54, 55, -1, 57, 58, -1, -1, -1,
3182 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
3183 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3184 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
386b8a85 3185 -1, 1, 94, 3, 4, 5, 6, -1, 8, 9,
73b0fce8 3186 10, 11, -1, 13, 14, -1, -1, -1, -1, -1,
386b8a85
JM
3187 112, -1, -1, -1, -1, -1, -1, -1, -1, 29,
3188 30, 31, -1, 33, -1, 35, 36, 37, -1, 39,
3189 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
956d6950 3190 50, 51, 52, 53, 54, 55, -1, 57, 58, -1,
cf776105 3191 -1, -1, 62, -1, -1, -1, -1, -1, 68, -1,
386b8a85
JM
3192 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3193 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
6a88a0c0
JM
3194 -1, -1, -1, 1, 94, 3, 4, 5, 6, -1,
3195 8, 9, 10, 11, -1, 13, 14, -1, -1, -1,
3196 -1, -1, 112, -1, -1, -1, -1, -1, -1, -1,
3197 -1, 29, 30, 31, -1, 33, -1, 35, 36, 37,
3198 -1, 39, 40, 41, 42, 43, 44, -1, 46, -1,
3199 -1, -1, 50, 51, 52, 53, 54, 55, -1, 57,
3200 58, -1, -1, -1, 62, -1, -1, -1, -1, -1,
cf776105
JM
3201 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
3202 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
3203 88, 89, 3, 4, 5, 6, 94, 8, 9, 10,
3204 11, -1, 13, 14, -1, -1, -1, -1, -1, -1,
3205 -1, -1, -1, -1, 112, -1, -1, -1, 29, 30,
3206 31, -1, 33, -1, 35, 36, 37, -1, 39, 40,
3207 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
3208 51, 52, 53, 54, 55, -1, 57, 58, -1, -1,
3209 -1, 62, -1, -1, -1, -1, -1, 68, -1, -1,
3210 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
3211 81, -1, -1, -1, -1, -1, 87, 88, 89, -1,
3212 -1, -1, -1, 94, 70, 71, 72, 73, 74, 75,
3213 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
3214 -1, 112, 113, 3, 4, 5, 6, 7, 8, 9,
3215 10, 11, -1, 13, 14, 15, -1, 17, 18, 19,
3216 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
3217 30, 31, 32, 33, -1, 35, 36, 37, -1, 39,
3218 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3219 50, 51, 52, 53, 54, 55, -1, 57, 58, 59,
3220 -1, 61, 62, -1, -1, -1, -1, -1, 68, -1,
3221 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3222 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3223 -1, -1, -1, -1, 94, -1, 96, -1, -1, -1,
3224 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3225 -1, 111, 112, 3, 4, 5, 6, 7, 8, 9,
3226 10, 11, -1, 13, 14, 15, -1, 17, 18, 19,
3227 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
3228 30, 31, 32, 33, -1, 35, 36, 37, -1, 39,
3229 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3230 50, 51, 52, 53, 54, 55, -1, 57, 58, 59,
3231 -1, 61, 62, -1, -1, -1, -1, -1, 68, -1,
3232 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3233 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3234 -1, -1, -1, -1, 94, -1, 96, -1, -1, 3,
3235 4, 5, 6, 7, 8, 9, 10, 11, -1, 13,
3236 14, 15, 112, 17, 18, 19, 20, 21, 22, 23,
3237 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
3238 -1, 35, 36, 37, -1, 39, 40, 41, 42, 43,
3239 44, -1, 46, -1, -1, -1, 50, 51, 52, 53,
3240 54, 55, -1, 57, 58, 59, -1, 61, 62, -1,
3241 -1, -1, -1, -1, 68, -1, -1, 71, -1, -1,
3242 -1, -1, -1, -1, -1, 79, 80, 81, -1, -1,
3243 -1, -1, -1, 87, 88, 89, -1, -1, -1, -1,
3244 94, -1, 96, -1, -1, 3, 4, 5, 6, 7,
3245 8, 9, 10, 11, -1, 13, 14, 15, 112, 17,
3246 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
3247 28, 29, 30, 31, 32, 33, -1, 35, 36, 37,
3248 -1, 39, 40, 41, 42, 43, 44, -1, 46, -1,
3249 -1, -1, 50, 51, 52, 53, 54, 55, -1, 57,
3250 58, -1, -1, 61, 62, -1, -1, -1, -1, -1,
3251 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
3252 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
3253 88, 89, -1, -1, -1, -1, 94, -1, 96, 3,
3254 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
3255 14, -1, -1, -1, 112, -1, -1, -1, -1, -1,
3256 -1, -1, -1, -1, -1, 29, 30, 31, 32, 33,
3257 -1, 35, 36, 37, -1, 39, 40, 41, 42, 43,
3258 44, -1, 46, -1, 48, -1, 50, 51, 52, 53,
3259 54, 55, -1, 57, 58, -1, -1, -1, 62, -1,
3260 -1, -1, -1, -1, 68, -1, -1, 71, -1, -1,
3261 -1, -1, -1, -1, -1, 79, 80, 81, -1, -1,
3262 -1, -1, -1, 87, 88, 89, -1, 91, -1, -1,
3263 94, 95, -1, -1, 98, 3, 4, 5, 6, -1,
3264 8, 9, 10, 11, -1, 13, 14, -1, 112, -1,
3265 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3266 -1, 29, 30, 31, -1, 33, -1, 35, 36, 37,
3267 -1, 39, 40, 41, 42, 43, 44, -1, 46, -1,
3268 48, -1, 50, 51, 52, 53, 54, 55, -1, 57,
3269 58, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3270 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
3271 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
3272 88, 89, -1, 91, -1, -1, 94, 95, 3, 4,
73b0fce8 3273 5, 6, -1, 8, 9, 10, 11, -1, 13, 14,
cf776105 3274 -1, -1, -1, -1, 112, -1, -1, -1, -1, -1,
73b0fce8
KL
3275 -1, -1, -1, -1, 29, 30, 31, -1, 33, -1,
3276 35, 36, 37, -1, 39, 40, 41, 42, 43, 44,
cf776105
JM
3277 -1, 46, -1, 48, -1, 50, 51, 52, 53, 54,
3278 55, -1, 57, 58, -1, -1, -1, -1, -1, -1,
73b0fce8
KL
3279 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
3280 -1, -1, -1, -1, 79, 80, 81, -1, -1, -1,
cf776105
JM
3281 -1, -1, 87, 88, 89, -1, 91, -1, -1, 94,
3282 95, 3, 4, 5, 6, -1, 8, 9, 10, 11,
3283 -1, 13, 14, -1, -1, -1, -1, 112, -1, -1,
3284 -1, -1, -1, -1, -1, -1, -1, 29, 30, 31,
3285 -1, 33, -1, 35, 36, 37, -1, 39, 40, 41,
3286 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
3287 52, 53, 54, 55, -1, 57, 58, -1, -1, 61,
3288 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
3289 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3290 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
3291 -1, -1, 94, 3, 4, 5, 6, 7, 8, 9,
3292 10, 11, -1, 13, 14, -1, -1, -1, -1, -1,
3293 112, -1, -1, -1, -1, -1, -1, -1, -1, 29,
3294 30, 31, 32, 33, -1, 35, 36, 37, -1, 39,
3295 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3296 50, 51, 52, 53, 54, 55, -1, 57, 58, -1,
3297 -1, -1, -1, -1, -1, -1, -1, -1, 68, -1,
3298 -1, 71, -1, -1, -1, -1, -1, -1, -1, 79,
3299 80, 81, -1, -1, -1, -1, -1, 87, 88, 89,
3300 3, 4, 5, 6, 94, 8, 9, 10, 11, -1,
3301 13, 14, -1, -1, -1, -1, -1, -1, -1, -1,
3302 -1, -1, 112, -1, -1, -1, 29, 30, 31, -1,
73b0fce8
KL
3303 33, -1, 35, 36, 37, -1, 39, 40, 41, 42,
3304 43, 44, -1, 46, -1, -1, -1, 50, 51, 52,
3305 53, 54, 55, -1, 57, 58, -1, -1, -1, 62,
3306 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
3307 -1, -1, -1, -1, -1, -1, 79, 80, 81, -1,
3308 -1, -1, -1, -1, 87, 88, 89, 3, 4, 5,
3309 6, 94, 8, 9, 10, 11, -1, 13, 14, -1,
3310 -1, -1, -1, -1, -1, -1, -1, -1, -1, 112,
6a88a0c0
JM
3311 -1, -1, -1, 29, 30, 31, -1, 33, -1, 35,
3312 36, 37, -1, 39, 40, 41, 42, 43, 44, -1,
3313 46, -1, -1, -1, 50, 51, 52, 53, 54, 55,
3314 -1, 57, 58, -1, -1, -1, 62, -1, -1, -1,
3315 -1, -1, 68, -1, -1, 71, -1, -1, -1, -1,
3316 -1, -1, -1, 79, 80, 81, -1, -1, -1, -1,
cf776105
JM
3317 -1, 87, 88, 89, 3, 4, 5, 6, 94, 8,
3318 9, 10, 11, -1, 13, 14, -1, -1, -1, -1,
3319 -1, -1, -1, -1, -1, -1, 112, -1, -1, -1,
3320 29, 30, 31, -1, 33, -1, 35, 36, 37, -1,
6a88a0c0
JM
3321 39, 40, 41, 42, 43, 44, -1, 46, -1, -1,
3322 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
cf776105 3323 59, -1, -1, -1, -1, -1, -1, -1, -1, 68,
73b0fce8
KL
3324 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3325 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
cf776105
JM
3326 89, 3, 4, 5, 6, 94, 8, 9, 10, 11,
3327 -1, 13, 14, -1, -1, -1, -1, -1, -1, -1,
3328 -1, -1, -1, 112, -1, -1, -1, 29, 30, 31,
3329 -1, 33, -1, 35, 36, 37, -1, 39, 40, 41,
3330 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
3331 52, 53, 54, 55, -1, 57, 58, -1, -1, -1,
3332 -1, -1, -1, -1, -1, -1, 68, -1, -1, 71,
3333 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3334 -1, -1, -1, -1, -1, 87, 88, 89, -1, -1,
3335 -1, -1, 94, 95, 3, 4, 5, 6, -1, 8,
73b0fce8 3336 9, 10, 11, -1, 13, 14, -1, -1, -1, -1,
cf776105
JM
3337 112, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3338 29, 30, 31, -1, 33, -1, 35, 36, 37, -1,
73b0fce8
KL
3339 39, 40, 41, 42, 43, 44, -1, 46, -1, -1,
3340 -1, 50, 51, 52, 53, 54, 55, -1, 57, 58,
cf776105 3341 -1, -1, -1, 62, -1, -1, -1, -1, -1, 68,
73b0fce8
KL
3342 -1, -1, 71, -1, -1, -1, -1, -1, -1, -1,
3343 79, 80, 81, -1, -1, -1, -1, -1, 87, 88,
3344 89, 3, 4, 5, 6, 94, 8, 9, 10, 11,
3345 -1, 13, 14, -1, -1, -1, -1, -1, -1, -1,
3346 -1, -1, -1, 112, -1, -1, -1, 29, 30, 31,
3347 -1, 33, -1, 35, 36, 37, -1, 39, 40, 41,
6a88a0c0
JM
3348 42, 43, 44, -1, 46, -1, -1, -1, 50, 51,
3349 52, 53, 54, 55, -1, 57, 58, -1, -1, -1,
73b0fce8 3350 62, -1, -1, -1, -1, -1, 68, -1, -1, 71,
6a88a0c0
JM
3351 -1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
3352 -1, -1, -1, -1, -1, 87, 88, 89, 3, 4,
3353 5, 6, 94, 8, 9, 10, 11, -1, 13, 14,
3354 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3355 112, -1, -1, -1, 29, 30, 31, -1, 33, -1,
386b8a85
JM
3356 35, 36, 37, -1, 39, 40, 41, 42, 43, 44,
3357 -1, 46, -1, -1, -1, 50, 51, 52, 53, 54,
6a88a0c0 3358 55, -1, 57, 58, -1, -1, -1, 62, -1, -1,
386b8a85
JM
3359 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
3360 -1, -1, -1, -1, 79, 80, 81, -1, -1, -1,
956d6950
JL
3361 -1, -1, 87, 88, 89, 3, 4, 5, 6, 94,
3362 8, 9, 10, 11, -1, 13, 14, -1, -1, -1,
3363 -1, -1, -1, -1, -1, -1, -1, 112, -1, -1,
3364 -1, 29, 30, 31, -1, 33, -1, 35, 36, 37,
3365 -1, 39, 40, 41, 42, 43, 44, -1, 46, -1,
3366 -1, -1, 50, 51, 52, 53, 54, 55, -1, 57,
cf776105 3367 58, -1, -1, -1, -1, -1, -1, -1, -1, -1,
956d6950
JL
3368 68, -1, -1, 71, -1, -1, -1, -1, -1, -1,
3369 -1, 79, 80, 81, -1, -1, -1, -1, -1, 87,
3370 88, 89, 3, 4, 5, 6, 94, 8, 9, 10,
3371 11, -1, 13, 14, -1, -1, -1, -1, -1, -1,
3372 -1, -1, -1, -1, 112, -1, -1, -1, 29, 30,
386b8a85
JM
3373 31, -1, 33, -1, 35, 36, 37, -1, 39, 40,
3374 41, 42, 43, 44, -1, 46, -1, -1, -1, 50,
73b0fce8 3375 51, 52, 53, 54, 55, -1, 57, 58, -1, -1,
6a88a0c0 3376 -1, -1, -1, -1, -1, -1, -1, 68, -1, -1,
386b8a85 3377 71, -1, -1, -1, -1, -1, -1, -1, 79, 80,
6a88a0c0
JM
3378 81, -1, -1, -1, -1, -1, 87, 88, 89, 3,
3379 4, 5, 6, 94, 8, 9, 10, 11, -1, 13,
3380 14, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3381 -1, 112, -1, -1, -1, 29, 30, 31, -1, 33,
386b8a85 3382 -1, 35, 36, 37, -1, 39, 40, 41, 42, 43,
956d6950 3383 44, -1, 46, -1, -1, -1, 50, 51, 52, 53,
cf776105 3384 54, 55, -1, 57, 58, -1, -1, -1, -1, -1,
386b8a85
JM
3385 -1, -1, -1, -1, 68, -1, -1, 71, -1, -1,
3386 -1, -1, -1, -1, -1, 79, 80, 81, -1, -1,
956d6950
JL
3387 -1, -1, -1, 87, 88, 89, 3, 4, 5, 6,
3388 94, 8, 9, 10, 11, -1, 13, 14, -1, -1,
3389 -1, -1, -1, -1, -1, -1, -1, -1, 112, -1,
3390 -1, -1, 29, 30, 31, -1, 33, -1, 35, 36,
386b8a85
JM
3391 37, -1, 39, 40, 41, 42, 43, 44, -1, 46,
3392 -1, -1, -1, 50, 51, 52, 53, 54, 55, -1,
73b0fce8 3393 57, 58, -1, -1, -1, -1, -1, -1, -1, -1,
386b8a85
JM
3394 -1, 68, -1, -1, 71, -1, -1, -1, -1, -1,
3395 -1, -1, 79, 80, 81, -1, -1, -1, -1, -1,
3396 87, 88, 89, 3, 4, 5, 6, 94, 8, 9,
3397 10, 11, -1, 13, 14, -1, -1, -1, -1, -1,
3398 -1, -1, -1, -1, -1, 112, -1, -1, -1, 29,
3399 30, 31, -1, 33, -1, 35, 36, 37, -1, 39,
3400 40, 41, 42, 43, 44, -1, 46, -1, -1, -1,
3401 50, 51, 52, 53, 54, 55, -1, 57, 58, -1,
6a88a0c0 3402 -1, -1, -1, -1, -1, -1, -1, -1, 68, -1,
cf776105
JM
3403 1, 71, 3, 4, 5, 6, 7, 8, 9, 79,
3404 80, 81, -1, 14, -1, -1, -1, 87, 88, 89,
3405 -1, -1, -1, -1, 94, -1, 27, 28, 29, -1,
3406 31, 32, 33, -1, -1, -1, 37, -1, -1, -1,
3407 -1, 42, 112, -1, 45, 46, 47, -1, 49, -1,
3408 -1, -1, -1, -1, 55, -1, 57, 58, -1, 1,
73b0fce8 3409 61, 3, 4, 5, 6, 7, 8, 9, -1, -1,
cf776105
JM
3410 71, -1, 14, -1, -1, -1, -1, -1, -1, -1,
3411 81, -1, -1, -1, -1, -1, -1, 29, 89, 31,
3412 32, 33, -1, 94, -1, 37, -1, -1, -1, 100,
3413 42, -1, -1, -1, 46, 47, -1, 49, -1, -1,
3414 -1, -1, -1, 55, -1, 57, 58, -1, -1, 61,
3415 -1, 63, 3, 4, 5, 6, 7, 8, 9, 71,
3416 -1, -1, -1, 14, -1, -1, -1, -1, -1, 81,
3417 -1, -1, -1, -1, -1, -1, -1, 89, 29, -1,
3418 31, 32, 94, -1, -1, -1, 37, -1, -1, -1,
3419 -1, 42, -1, -1, -1, 46, -1, 3, 4, 5,
3420 6, 7, 8, 9, 55, -1, 57, 58, 14, -1,
3421 -1, -1, 63, -1, -1, -1, -1, -1, -1, -1,
3422 71, -1, -1, 29, -1, 31, 32, -1, -1, -1,
3423 81, 37, -1, -1, -1, -1, 42, -1, 89, -1,
3424 46, -1, -1, 94, -1, -1, -1, -1, -1, 55,
3425 -1, 57, 58, 3, 4, 5, 6, 7, 8, 9,
3426 -1, -1, -1, -1, 14, 71, -1, -1, -1, -1,
3427 -1, -1, -1, -1, -1, 81, -1, -1, -1, 29,
3428 -1, 31, 32, 89, -1, -1, -1, 37, 94, -1,
3429 -1, -1, 42, -1, -1, -1, 46, -1, 3, 4,
3430 5, 6, 7, 8, 9, 55, -1, 57, 58, 14,
3431 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3432 -1, 71, -1, -1, -1, -1, -1, 32, -1, -1,
3433 -1, 81, 37, -1, -1, -1, -1, 42, -1, 89,
3434 -1, 46, -1, 48, 94, -1, -1, -1, -1, -1,
3435 55, -1, 57, 58, -1, -1, -1, -1, -1, -1,
3436 -1, -1, -1, -1, -1, -1, 71, -1, -1, -1,
3437 -1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
3438 -1, -1, -1, -1, 89, -1, -1, -1, -1, 94,
6a88a0c0
JM
3439 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
3440 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
cf776105
JM
3441 84, 85, 64, 65, 66, 67, 68, 69, 70, 71,
3442 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
3443 82, 83, 84, 85, -1, -1, -1, -1, -1, 113,
3444 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
3445 81, 82, 83, 84, 85, -1, -1, 109, 63, 64,
3446 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
3447 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
3448 85, 63, 64, 65, 66, 67, 68, 69, 70, 71,
3449 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
3450 82, 83, 84, 85, 64, 65, 66, 67, 68, 69,
3451 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
3452 80, 81, 82, 83, 84, 85, 68, 69, 70, 71,
3453 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
3454 82, 83, 84, 85
861bb6c1
JL
3455};
3456/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
67da3287 3457#line 3 "/usr/lib/bison.simple"
861bb6c1
JL
3458
3459/* Skeleton output parser for bison,
3460 Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
3461
3462 This program is free software; you can redistribute it and/or modify
3463 it under the terms of the GNU General Public License as published by
3464 the Free Software Foundation; either version 2, or (at your option)
3465 any later version.
3466
3467 This program is distributed in the hope that it will be useful,
3468 but WITHOUT ANY WARRANTY; without even the implied warranty of
3469 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3470 GNU General Public License for more details.
3471
3472 You should have received a copy of the GNU General Public License
3473 along with this program; if not, write to the Free Software
3474 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
3475
3476/* As a special exception, when this file is copied by Bison into a
3477 Bison output file, you may use that output file without restriction.
3478 This special exception was added by the Free Software Foundation
3479 in version 1.24 of Bison. */
3480
3481#ifndef alloca
3482#ifdef __GNUC__
3483#define alloca __builtin_alloca
3484#else /* not GNU C. */
3485#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi)
3486#include <alloca.h>
3487#else /* not sparc */
3488#if defined (MSDOS) && !defined (__TURBOC__)
3489#include <malloc.h>
3490#else /* not MSDOS, or __TURBOC__ */
3491#if defined(_AIX)
3492#include <malloc.h>
3493 #pragma alloca
3494#else /* not MSDOS, __TURBOC__, or _AIX */
3495#ifdef __hpux
3496#ifdef __cplusplus
3497extern "C" {
3498void *alloca (unsigned int);
3499};
3500#else /* not __cplusplus */
3501void *alloca ();
3502#endif /* not __cplusplus */
3503#endif /* __hpux */
3504#endif /* not _AIX */
3505#endif /* not MSDOS, or __TURBOC__ */
3506#endif /* not sparc. */
3507#endif /* not GNU C. */
3508#endif /* alloca not defined. */
3509
3510/* This is the parser code that is written into each bison parser
3511 when the %semantic_parser declaration is not specified in the grammar.
3512 It was written by Richard Stallman by simplifying the hairy parser
3513 used when %semantic_parser is specified. */
3514
3515/* Note: there must be only one dollar sign in this file.
3516 It is replaced by the list of actions, each action
3517 as one case of the switch. */
3518
3519#define yyerrok (yyerrstatus = 0)
3520#define yyclearin (yychar = YYEMPTY)
3521#define YYEMPTY -2
3522#define YYEOF 0
3523#define YYACCEPT return(0)
3524#define YYABORT return(1)
3525#define YYERROR goto yyerrlab1
3526/* Like YYERROR except do call yyerror.
3527 This remains here temporarily to ease the
3528 transition to the new meaning of YYERROR, for GCC.
3529 Once GCC version 2 has supplanted version 1, this can go. */
3530#define YYFAIL goto yyerrlab
3531#define YYRECOVERING() (!!yyerrstatus)
3532#define YYBACKUP(token, value) \
3533do \
3534 if (yychar == YYEMPTY && yylen == 1) \
3535 { yychar = (token), yylval = (value); \
3536 yychar1 = YYTRANSLATE (yychar); \
3537 YYPOPSTACK; \
3538 goto yybackup; \
3539 } \
3540 else \
3541 { yyerror ("syntax error: cannot back up"); YYERROR; } \
3542while (0)
3543
3544#define YYTERROR 1
3545#define YYERRCODE 256
3546
3547#ifndef YYPURE
3548#define YYLEX yylex()
3549#endif
3550
3551#ifdef YYPURE
3552#ifdef YYLSP_NEEDED
3553#ifdef YYLEX_PARAM
3554#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM)
3555#else
3556#define YYLEX yylex(&yylval, &yylloc)
3557#endif
3558#else /* not YYLSP_NEEDED */
3559#ifdef YYLEX_PARAM
3560#define YYLEX yylex(&yylval, YYLEX_PARAM)
3561#else
3562#define YYLEX yylex(&yylval)
3563#endif
3564#endif /* not YYLSP_NEEDED */
3565#endif
3566
3567/* If nonreentrant, generate the variables here */
3568
3569#ifndef YYPURE
3570
3571int yychar; /* the lookahead symbol */
3572YYSTYPE yylval; /* the semantic value of the */
3573 /* lookahead symbol */
3574
3575#ifdef YYLSP_NEEDED
3576YYLTYPE yylloc; /* location data for the lookahead */
3577 /* symbol */
3578#endif
3579
3580int yynerrs; /* number of parse errors so far */
3581#endif /* not YYPURE */
3582
3583#if YYDEBUG != 0
3584int yydebug; /* nonzero means print parse trace */
3585/* Since this is uninitialized, it does not stop multiple parsers
3586 from coexisting. */
3587#endif
3588
3589/* YYINITDEPTH indicates the initial size of the parser's stacks */
3590
3591#ifndef YYINITDEPTH
3592#define YYINITDEPTH 200
3593#endif
3594
3595/* YYMAXDEPTH is the maximum size the stacks can grow to
3596 (effective only if the built-in stack extension method is used). */
3597
3598#if YYMAXDEPTH == 0
3599#undef YYMAXDEPTH
3600#endif
3601
3602#ifndef YYMAXDEPTH
3603#define YYMAXDEPTH 10000
3604#endif
3605
3606/* Prevent warning if -Wstrict-prototypes. */
3607#ifdef __GNUC__
3608int yyparse (void);
3609#endif
3610\f
3611#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */
8eeda2ec 3612#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
861bb6c1
JL
3613#else /* not GNU C or C++ */
3614#ifndef __cplusplus
3615
3616/* This is the most reliable way to avoid incompatibilities
3617 in available built-in functions on various systems. */
3618static void
8eeda2ec 3619__yy_memcpy (to, from, count)
861bb6c1 3620 char *to;
8eeda2ec 3621 char *from;
861bb6c1
JL
3622 int count;
3623{
3624 register char *f = from;
3625 register char *t = to;
3626 register int i = count;
3627
3628 while (i-- > 0)
3629 *t++ = *f++;
3630}
3631
3632#else /* __cplusplus */
3633
3634/* This is the most reliable way to avoid incompatibilities
3635 in available built-in functions on various systems. */
3636static void
8eeda2ec 3637__yy_memcpy (char *to, char *from, int count)
861bb6c1
JL
3638{
3639 register char *f = from;
3640 register char *t = to;
3641 register int i = count;
3642
3643 while (i-- > 0)
3644 *t++ = *f++;
3645}
3646
3647#endif
3648#endif
3649\f
67da3287 3650#line 196 "/usr/lib/bison.simple"
861bb6c1
JL
3651
3652/* The user can define YYPARSE_PARAM as the name of an argument to be passed
3653 into yyparse. The argument should have type void *.
3654 It should actually point to an object.
3655 Grammar actions can access the variable by casting it
3656 to the proper pointer type. */
3657
3658#ifdef YYPARSE_PARAM
8eeda2ec
JM
3659#ifdef __cplusplus
3660#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
3661#define YYPARSE_PARAM_DECL
3662#else /* not __cplusplus */
3663#define YYPARSE_PARAM_ARG YYPARSE_PARAM
861bb6c1 3664#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
8eeda2ec
JM
3665#endif /* not __cplusplus */
3666#else /* not YYPARSE_PARAM */
3667#define YYPARSE_PARAM_ARG
861bb6c1 3668#define YYPARSE_PARAM_DECL
8eeda2ec 3669#endif /* not YYPARSE_PARAM */
861bb6c1
JL
3670
3671int
8eeda2ec 3672yyparse(YYPARSE_PARAM_ARG)
861bb6c1
JL
3673 YYPARSE_PARAM_DECL
3674{
3675 register int yystate;
3676 register int yyn;
3677 register short *yyssp;
3678 register YYSTYPE *yyvsp;
3679 int yyerrstatus; /* number of tokens to shift before error messages enabled */
3680 int yychar1 = 0; /* lookahead token as an internal (translated) token number */
3681
3682 short yyssa[YYINITDEPTH]; /* the state stack */
3683 YYSTYPE yyvsa[YYINITDEPTH]; /* the semantic value stack */
3684
3685 short *yyss = yyssa; /* refer to the stacks thru separate pointers */
3686 YYSTYPE *yyvs = yyvsa; /* to allow yyoverflow to reallocate them elsewhere */
3687
3688#ifdef YYLSP_NEEDED
3689 YYLTYPE yylsa[YYINITDEPTH]; /* the location stack */
3690 YYLTYPE *yyls = yylsa;
3691 YYLTYPE *yylsp;
3692
3693#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
3694#else
3695#define YYPOPSTACK (yyvsp--, yyssp--)
3696#endif
3697
3698 int yystacksize = YYINITDEPTH;
3699
3700#ifdef YYPURE
3701 int yychar;
3702 YYSTYPE yylval;
3703 int yynerrs;
3704#ifdef YYLSP_NEEDED
3705 YYLTYPE yylloc;
3706#endif
3707#endif
3708
3709 YYSTYPE yyval; /* the variable used to return */
3710 /* semantic values from the action */
3711 /* routines */
3712
3713 int yylen;
3714
3715#if YYDEBUG != 0
3716 if (yydebug)
3717 fprintf(stderr, "Starting parse\n");
3718#endif
3719
3720 yystate = 0;
3721 yyerrstatus = 0;
3722 yynerrs = 0;
3723 yychar = YYEMPTY; /* Cause a token to be read. */
3724
3725 /* Initialize stack pointers.
3726 Waste one element of value and location stack
3727 so that they stay on the same level as the state stack.
3728 The wasted elements are never initialized. */
3729
3730 yyssp = yyss - 1;
3731 yyvsp = yyvs;
3732#ifdef YYLSP_NEEDED
3733 yylsp = yyls;
3734#endif
3735
3736/* Push a new state, which is found in yystate . */
3737/* In all cases, when you get here, the value and location stacks
3738 have just been pushed. so pushing a state here evens the stacks. */
3739yynewstate:
3740
3741 *++yyssp = yystate;
3742
3743 if (yyssp >= yyss + yystacksize - 1)
3744 {
3745 /* Give user a chance to reallocate the stack */
3746 /* Use copies of these so that the &'s don't force the real ones into memory. */
3747 YYSTYPE *yyvs1 = yyvs;
3748 short *yyss1 = yyss;
3749#ifdef YYLSP_NEEDED
3750 YYLTYPE *yyls1 = yyls;
3751#endif
3752
3753 /* Get the current used size of the three stacks, in elements. */
3754 int size = yyssp - yyss + 1;
3755
3756#ifdef yyoverflow
3757 /* Each stack pointer address is followed by the size of
3758 the data in use in that stack, in bytes. */
3759#ifdef YYLSP_NEEDED
3760 /* This used to be a conditional around just the two extra args,
3761 but that might be undefined if yyoverflow is a macro. */
3762 yyoverflow("parser stack overflow",
3763 &yyss1, size * sizeof (*yyssp),
3764 &yyvs1, size * sizeof (*yyvsp),
3765 &yyls1, size * sizeof (*yylsp),
3766 &yystacksize);
3767#else
3768 yyoverflow("parser stack overflow",
3769 &yyss1, size * sizeof (*yyssp),
3770 &yyvs1, size * sizeof (*yyvsp),
3771 &yystacksize);
3772#endif
3773
3774 yyss = yyss1; yyvs = yyvs1;
3775#ifdef YYLSP_NEEDED
3776 yyls = yyls1;
3777#endif
3778#else /* no yyoverflow */
3779 /* Extend the stack our own way. */
3780 if (yystacksize >= YYMAXDEPTH)
3781 {
3782 yyerror("parser stack overflow");
3783 return 2;
3784 }
3785 yystacksize *= 2;
3786 if (yystacksize > YYMAXDEPTH)
3787 yystacksize = YYMAXDEPTH;
3788 yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
8eeda2ec 3789 __yy_memcpy ((char *)yyss, (char *)yyss1, size * sizeof (*yyssp));
861bb6c1 3790 yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
8eeda2ec 3791 __yy_memcpy ((char *)yyvs, (char *)yyvs1, size * sizeof (*yyvsp));
861bb6c1
JL
3792#ifdef YYLSP_NEEDED
3793 yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
8eeda2ec 3794 __yy_memcpy ((char *)yyls, (char *)yyls1, size * sizeof (*yylsp));
861bb6c1
JL
3795#endif
3796#endif /* no yyoverflow */
3797
3798 yyssp = yyss + size - 1;
3799 yyvsp = yyvs + size - 1;
3800#ifdef YYLSP_NEEDED
3801 yylsp = yyls + size - 1;
3802#endif
3803
3804#if YYDEBUG != 0
3805 if (yydebug)
3806 fprintf(stderr, "Stack size increased to %d\n", yystacksize);
3807#endif
3808
3809 if (yyssp >= yyss + yystacksize - 1)
3810 YYABORT;
3811 }
3812
3813#if YYDEBUG != 0
3814 if (yydebug)
3815 fprintf(stderr, "Entering state %d\n", yystate);
3816#endif
3817
3818 goto yybackup;
3819 yybackup:
3820
3821/* Do appropriate processing given the current state. */
3822/* Read a lookahead token if we need one and don't already have one. */
3823/* yyresume: */
3824
3825 /* First try to decide what to do without reference to lookahead token. */
3826
3827 yyn = yypact[yystate];
3828 if (yyn == YYFLAG)
3829 goto yydefault;
3830
3831 /* Not known => get a lookahead token if don't already have one. */
3832
3833 /* yychar is either YYEMPTY or YYEOF
3834 or a valid token in external form. */
3835
3836 if (yychar == YYEMPTY)
3837 {
3838#if YYDEBUG != 0
3839 if (yydebug)
3840 fprintf(stderr, "Reading a token: ");
3841#endif
3842 yychar = YYLEX;
3843 }
3844
3845 /* Convert token to internal form (in yychar1) for indexing tables with */
3846
3847 if (yychar <= 0) /* This means end of input. */
3848 {
3849 yychar1 = 0;
3850 yychar = YYEOF; /* Don't call YYLEX any more */
3851
3852#if YYDEBUG != 0
3853 if (yydebug)
3854 fprintf(stderr, "Now at end of input.\n");
3855#endif
3856 }
3857 else
3858 {
3859 yychar1 = YYTRANSLATE(yychar);
3860
3861#if YYDEBUG != 0
3862 if (yydebug)
3863 {
3864 fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
3865 /* Give the individual parser a way to print the precise meaning
3866 of a token, for further debugging info. */
3867#ifdef YYPRINT
3868 YYPRINT (stderr, yychar, yylval);
3869#endif
3870 fprintf (stderr, ")\n");
3871 }
3872#endif
3873 }
3874
3875 yyn += yychar1;
3876 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
3877 goto yydefault;
3878
3879 yyn = yytable[yyn];
3880
3881 /* yyn is what to do for this token type in this state.
3882 Negative => reduce, -yyn is rule number.
3883 Positive => shift, yyn is new state.
3884 New state is final state => don't bother to shift,
3885 just return success.
3886 0, or most negative number => error. */
3887
3888 if (yyn < 0)
3889 {
3890 if (yyn == YYFLAG)
3891 goto yyerrlab;
3892 yyn = -yyn;
3893 goto yyreduce;
3894 }
3895 else if (yyn == 0)
3896 goto yyerrlab;
3897
3898 if (yyn == YYFINAL)
3899 YYACCEPT;
3900
3901 /* Shift the lookahead token. */
3902
3903#if YYDEBUG != 0
3904 if (yydebug)
3905 fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
3906#endif
3907
3908 /* Discard the token being shifted unless it is eof. */
3909 if (yychar != YYEOF)
3910 yychar = YYEMPTY;
3911
3912 *++yyvsp = yylval;
3913#ifdef YYLSP_NEEDED
3914 *++yylsp = yylloc;
3915#endif
3916
3917 /* count tokens shifted since error; after three, turn off error status. */
3918 if (yyerrstatus) yyerrstatus--;
3919
3920 yystate = yyn;
3921 goto yynewstate;
3922
3923/* Do the default action for the current state. */
3924yydefault:
3925
3926 yyn = yydefact[yystate];
3927 if (yyn == 0)
3928 goto yyerrlab;
3929
3930/* Do a reduction. yyn is the number of a rule to reduce with. */
3931yyreduce:
3932 yylen = yyr2[yyn];
3933 if (yylen > 0)
3934 yyval = yyvsp[1-yylen]; /* implement default value of the action */
3935
3936#if YYDEBUG != 0
3937 if (yydebug)
3938 {
3939 int i;
3940
3941 fprintf (stderr, "Reducing via rule %d (line %d), ",
3942 yyn, yyrline[yyn]);
3943
3944 /* Print the symbols being reduced, and their result. */
3945 for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
3946 fprintf (stderr, "%s ", yytname[yyrhs[i]]);
3947 fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
3948 }
3949#endif
3950
3951
3952 switch (yyn) {
3953
3954case 2:
cf776105 3955#line 314 "parse.y"
861bb6c1
JL
3956{
3957 /* In case there were missing closebraces,
3958 get us back to the global binding level. */
3959 while (! global_bindings_p ())
3960 poplevel (0, 0, 0);
3961 finish_file ();
3962 ;
3963 break;}
3964case 3:
cf776105 3965#line 328 "parse.y"
861bb6c1
JL
3966{ yyval.ttype = NULL_TREE; ;
3967 break;}
3968case 4:
cf776105 3969#line 330 "parse.y"
861bb6c1
JL
3970{ yyval.ttype = NULL_TREE; ;
3971 break;}
3972case 5:
cf776105 3973#line 332 "parse.y"
861bb6c1
JL
3974{ yyval.ttype = NULL_TREE; ;
3975 break;}
3976case 8:
cf776105 3977#line 341 "parse.y"
861bb6c1
JL
3978{ have_extern_spec = 1;
3979 used_extern_spec = 0;
3980 yyval.ttype = NULL_TREE; ;
3981 break;}
3982case 9:
cf776105 3983#line 346 "parse.y"
861bb6c1
JL
3984{ have_extern_spec = 0; ;
3985 break;}
3986case 10:
cf776105 3987#line 351 "parse.y"
861bb6c1
JL
3988{ yyval.itype = pedantic;
3989 pedantic = 0; ;
3990 break;}
3991case 13:
cf776105 3992#line 361 "parse.y"
861bb6c1
JL
3993{ if (pending_lang_change) do_pending_lang_change(); ;
3994 break;}
3995case 14:
cf776105 3996#line 363 "parse.y"
861bb6c1
JL
3997{ if (! toplevel_bindings_p () && ! pseudo_global_level_p())
3998 pop_everything (); ;
3999 break;}
4000case 15:
cf776105 4001#line 369 "parse.y"
861bb6c1
JL
4002{ if (pending_inlines) do_pending_inlines (); ;
4003 break;}
4004case 16:
cf776105 4005#line 371 "parse.y"
861bb6c1
JL
4006{ if (pending_inlines) do_pending_inlines (); ;
4007 break;}
4008case 17:
cf776105 4009#line 373 "parse.y"
861bb6c1
JL
4010{ if (pending_inlines) do_pending_inlines (); ;
4011 break;}
4012case 18:
cf776105 4013#line 375 "parse.y"
861bb6c1
JL
4014{ if (TREE_CHAIN (yyvsp[-2].ttype)) yyvsp[-2].ttype = combine_strings (yyvsp[-2].ttype);
4015 assemble_asm (yyvsp[-2].ttype); ;
4016 break;}
4017case 19:
cf776105 4018#line 378 "parse.y"
861bb6c1
JL
4019{ pop_lang_context (); ;
4020 break;}
4021case 20:
cf776105 4022#line 380 "parse.y"
861bb6c1
JL
4023{ if (pending_inlines) do_pending_inlines ();
4024 pop_lang_context (); ;
4025 break;}
4026case 21:
cf776105 4027#line 383 "parse.y"
861bb6c1
JL
4028{ if (pending_inlines) do_pending_inlines ();
4029 pop_lang_context (); ;
4030 break;}
4031case 22:
cf776105 4032#line 386 "parse.y"
861bb6c1
JL
4033{ push_namespace (yyvsp[-1].ttype); ;
4034 break;}
4035case 23:
cf776105 4036#line 388 "parse.y"
861bb6c1
JL
4037{ pop_namespace (); ;
4038 break;}
4039case 24:
cf776105 4040#line 390 "parse.y"
861bb6c1
JL
4041{ push_namespace (NULL_TREE); ;
4042 break;}
4043case 25:
cf776105 4044#line 392 "parse.y"
861bb6c1
JL
4045{ pop_namespace (); ;
4046 break;}
4047case 26:
cf776105 4048#line 394 "parse.y"
861bb6c1
JL
4049{ do_namespace_alias (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
4050 break;}
4051case 27:
cf776105 4052#line 396 "parse.y"
861bb6c1
JL
4053{ do_toplevel_using_decl (yyvsp[-1].ttype); ;
4054 break;}
4055case 28:
cf776105 4056#line 398 "parse.y"
861bb6c1
JL
4057{
4058 if (TREE_CODE (yyvsp[-1].ttype) == IDENTIFIER_NODE)
4059 yyvsp[-1].ttype = lastiddecl;
4060 do_using_directive (yyvsp[-1].ttype);
4061 ;
4062 break;}
4063case 29:
cf776105 4064#line 404 "parse.y"
861bb6c1
JL
4065{ pedantic = yyvsp[-1].itype; ;
4066 break;}
4067case 30:
cf776105 4068#line 409 "parse.y"
861bb6c1
JL
4069{ yyval.ttype = yyvsp[0].ttype; ;
4070 break;}
4071case 31:
cf776105 4072#line 411 "parse.y"
861bb6c1
JL
4073{ yyval.ttype = yyvsp[0].ttype; ;
4074 break;}
4075case 32:
cf776105 4076#line 413 "parse.y"
861bb6c1
JL
4077{ yyval.ttype = yyvsp[0].ttype; ;
4078 break;}
4079case 35:
cf776105 4080#line 420 "parse.y"
861bb6c1
JL
4081{ yyval.ttype = yyvsp[0].ttype; ;
4082 break;}
4083case 36:
cf776105 4084#line 422 "parse.y"
861bb6c1
JL
4085{ yyval.ttype = yyvsp[0].ttype; ;
4086 break;}
4087case 37:
cf776105 4088#line 427 "parse.y"
861bb6c1
JL
4089{ push_lang_context (yyvsp[0].ttype); ;
4090 break;}
4091case 38:
cf776105 4092#line 429 "parse.y"
861bb6c1
JL
4093{ if (current_lang_name != yyvsp[0].ttype)
4094 cp_error ("use of linkage spec `%D' is different from previous spec `%D'", yyvsp[0].ttype, current_lang_name);
4095 pop_lang_context (); push_lang_context (yyvsp[0].ttype); ;
4096 break;}
4097case 39:
cf776105 4098#line 436 "parse.y"
861bb6c1
JL
4099{ begin_template_parm_list (); ;
4100 break;}
4101case 40:
cf776105 4102#line 438 "parse.y"
861bb6c1
JL
4103{ yyval.ttype = end_template_parm_list (yyvsp[-1].ttype); ;
4104 break;}
4105case 41:
cf776105 4106#line 440 "parse.y"
386b8a85
JM
4107{ begin_specialization();
4108 yyval.ttype = NULL_TREE; ;
861bb6c1
JL
4109 break;}
4110case 42:
cf776105 4111#line 446 "parse.y"
861bb6c1
JL
4112{ yyval.ttype = process_template_parm (NULL_TREE, yyvsp[0].ttype); ;
4113 break;}
4114case 43:
cf776105 4115#line 448 "parse.y"
861bb6c1
JL
4116{ yyval.ttype = process_template_parm (yyvsp[-2].ttype, yyvsp[0].ttype); ;
4117 break;}
4118case 44:
cf776105 4119#line 453 "parse.y"
73b0fce8
KL
4120{ yyval.ttype = yyvsp[0].ttype; ;
4121 break;}
4122case 45:
cf776105 4123#line 455 "parse.y"
73b0fce8
KL
4124{ yyval.ttype = NULL_TREE; ;
4125 break;}
4126case 46:
cf776105 4127#line 459 "parse.y"
861bb6c1 4128{
73b0fce8 4129 yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype);
861bb6c1
JL
4130 if (TREE_PURPOSE (yyval.ttype) == signature_type_node)
4131 sorry ("signature as template type parameter");
4132 else if (TREE_PURPOSE (yyval.ttype) != class_type_node)
4133 {
4134 pedwarn ("template type parameters must use the keyword `class'");
4135 TREE_PURPOSE (yyval.ttype) = class_type_node;
4136 }
4137 ;
4138 break;}
861bb6c1 4139case 47:
cf776105 4140#line 470 "parse.y"
861bb6c1
JL
4141{ yyval.ttype = build_tree_list (class_type_node, yyvsp[0].ttype); ;
4142 break;}
4143case 48:
cf776105 4144#line 475 "parse.y"
73b0fce8
KL
4145{
4146 tree decl = build_decl (TYPE_DECL, yyvsp[0].ttype, NULL_TREE);
4147 tree tmpl = build_lang_decl (TEMPLATE_DECL, yyvsp[0].ttype, NULL_TREE);
4148 DECL_TEMPLATE_PARMS (tmpl) = current_template_parms;
4149 DECL_TEMPLATE_RESULT (tmpl) = decl;
4150 SET_DECL_ARTIFICIAL (decl);
4151 end_template_decl ();
4152
4153 if (yyvsp[-1].ttype == signature_type_node)
4154 sorry ("signature as template template parameter");
4155 else if (yyvsp[-1].ttype != class_type_node)
4156 pedwarn ("template template parameters must use the keyword `class'");
4157 yyval.ttype = build_tree_list (class_type_node, tmpl);
4158 ;
4159 break;}
4160case 49:
cf776105 4161#line 500 "parse.y"
861bb6c1
JL
4162{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
4163 break;}
73b0fce8 4164case 50:
cf776105 4165#line 502 "parse.y"
861bb6c1
JL
4166{ yyval.ttype = build_tree_list (groktypename (yyvsp[0].ftype.t), yyvsp[-2].ttype); ;
4167 break;}
73b0fce8 4168case 51:
cf776105 4169#line 504 "parse.y"
861bb6c1
JL
4170{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ftype.t); ;
4171 break;}
73b0fce8 4172case 52:
cf776105 4173#line 506 "parse.y"
861bb6c1
JL
4174{ yyval.ttype = build_tree_list (yyvsp[0].ttype, yyvsp[-2].ftype.t); ;
4175 break;}
73b0fce8 4176case 53:
cf776105 4177#line 508 "parse.y"
73b0fce8
KL
4178{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
4179 break;}
4180case 54:
cf776105 4181#line 510 "parse.y"
73b0fce8 4182{
e7e66632
KL
4183 if (TREE_CODE (yyvsp[0].ttype) != TEMPLATE_DECL
4184 && TREE_CODE (yyvsp[0].ttype) != TEMPLATE_TEMPLATE_PARM
4185 && TREE_CODE (yyvsp[0].ttype) != TYPE_DECL)
4186 {
4187 error ("invalid default template argument");
4188 yyvsp[0].ttype = error_mark_node;
4189 }
4190 yyval.ttype = build_tree_list (yyvsp[0].ttype, yyvsp[-2].ttype);
4191 ;
73b0fce8
KL
4192 break;}
4193case 55:
cf776105 4194#line 525 "parse.y"
386b8a85
JM
4195{
4196 if (yyvsp[-1].ttype)
4197 end_template_decl ();
4198 else
4199 end_specialization ();
4200 ;
861bb6c1 4201 break;}
73b0fce8 4202case 56:
cf776105 4203#line 533 "parse.y"
386b8a85
JM
4204{
4205 if (yyvsp[-1].ttype)
4206 end_template_decl ();
4207 else
4208 end_specialization ();
4209 ;
861bb6c1 4210 break;}
73b0fce8 4211case 57:
cf776105 4212#line 543 "parse.y"
861bb6c1
JL
4213{;
4214 break;}
73b0fce8 4215case 58:
cf776105 4216#line 545 "parse.y"
861bb6c1
JL
4217{;
4218 break;}
73b0fce8 4219case 59:
cf776105 4220#line 547 "parse.y"
861bb6c1
JL
4221{
4222 note_list_got_semicolon (yyvsp[-2].ftype.t);
4223 ;
4224 break;}
73b0fce8 4225case 60:
cf776105 4226#line 551 "parse.y"
861bb6c1
JL
4227{ pedwarn ("empty declaration"); ;
4228 break;}
73b0fce8 4229case 62:
cf776105 4230#line 554 "parse.y"
861bb6c1
JL
4231{
4232 tree t, attrs;
4233 split_specs_attrs (yyvsp[-1].ftype.t, &t, &attrs);
4234 shadow_tag (t);
4235 note_list_got_semicolon (yyvsp[-1].ftype.t);
4236 ;
4237 break;}
73b0fce8 4238case 66:
cf776105 4239#line 567 "parse.y"
861bb6c1
JL
4240{ yyval.itype = 0; ;
4241 break;}
73b0fce8 4242case 67:
cf776105 4243#line 569 "parse.y"
861bb6c1
JL
4244{ yyval.itype = 1; ;
4245 break;}
73b0fce8 4246case 73:
cf776105 4247#line 585 "parse.y"
861bb6c1
JL
4248{ finish_function (lineno, (int)yyvsp[-1].itype, 0); ;
4249 break;}
73b0fce8 4250case 74:
cf776105 4251#line 587 "parse.y"
861bb6c1
JL
4252{ ;
4253 break;}
73b0fce8 4254case 75:
cf776105 4255#line 589 "parse.y"
861bb6c1
JL
4256{ ;
4257 break;}
73b0fce8 4258case 76:
cf776105 4259#line 594 "parse.y"
861bb6c1
JL
4260{
4261 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, yyvsp[-1].ttype);
4262 if (yyvsp[-2].ttype != current_class_type)
4263 {
4264 push_nested_class (yyvsp[-2].ttype, 3);
4265 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4266 }
4267 ;
4268 break;}
73b0fce8 4269case 77:
cf776105 4270#line 603 "parse.y"
861bb6c1
JL
4271{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4272 break;}
73b0fce8 4273case 78:
cf776105 4274#line 605 "parse.y"
861bb6c1
JL
4275{
4276 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-4].ttype, yyvsp[-3].ttype);
4277 if (yyvsp[-4].ttype != current_class_type)
4278 {
4279 push_nested_class (yyvsp[-4].ttype, 3);
4280 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4281 }
4282 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4283 ;
4284 break;}
73b0fce8 4285case 79:
cf776105 4286#line 615 "parse.y"
861bb6c1
JL
4287{
4288 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, yyvsp[-1].ttype);
4289 if (yyvsp[-2].ttype != current_class_type)
4290 {
4291 push_nested_class (yyvsp[-2].ttype, 3);
4292 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4293 }
4294 ;
4295 break;}
73b0fce8 4296case 80:
cf776105 4297#line 624 "parse.y"
861bb6c1
JL
4298{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4299 break;}
73b0fce8 4300case 81:
cf776105 4301#line 626 "parse.y"
861bb6c1
JL
4302{
4303 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-4].ttype, yyvsp[-3].ttype);
4304 if (yyvsp[-4].ttype != current_class_type)
4305 {
4306 push_nested_class (yyvsp[-4].ttype, 3);
4307 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4308 }
4309 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4310 ;
4311 break;}
73b0fce8 4312case 82:
cf776105 4313#line 636 "parse.y"
861bb6c1
JL
4314{
4315 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, yyvsp[-1].ttype);
4316 if (yyvsp[-2].ttype != current_class_type)
4317 {
4318 push_nested_class (yyvsp[-2].ttype, 3);
4319 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4320 }
4321 ;
4322 break;}
73b0fce8 4323case 83:
cf776105 4324#line 645 "parse.y"
861bb6c1
JL
4325{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4326 break;}
73b0fce8 4327case 84:
cf776105 4328#line 647 "parse.y"
861bb6c1
JL
4329{
4330 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-4].ttype, yyvsp[-3].ttype);
4331 if (yyvsp[-4].ttype != current_class_type)
4332 {
4333 push_nested_class (yyvsp[-4].ttype, 3);
4334 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4335 }
4336 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4337 ;
4338 break;}
73b0fce8 4339case 85:
cf776105 4340#line 657 "parse.y"
861bb6c1
JL
4341{
4342 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, yyvsp[-1].ttype);
4343 if (yyvsp[-2].ttype != current_class_type)
4344 {
4345 push_nested_class (yyvsp[-2].ttype, 3);
4346 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4347 }
4348 ;
4349 break;}
73b0fce8 4350case 86:
cf776105 4351#line 666 "parse.y"
861bb6c1
JL
4352{ yyval.ttype = make_call_declarator (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4353 break;}
73b0fce8 4354case 87:
cf776105 4355#line 668 "parse.y"
861bb6c1
JL
4356{
4357 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-4].ttype, yyvsp[-3].ttype);
4358 if (yyvsp[-4].ttype != current_class_type)
4359 {
4360 push_nested_class (yyvsp[-4].ttype, 3);
4361 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
4362 }
4363 yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype);
4364 ;
4365 break;}
73b0fce8 4366case 88:
cf776105 4367#line 681 "parse.y"
861bb6c1
JL
4368{ tree specs, attrs;
4369 split_specs_attrs (yyvsp[-1].ftype.t, &specs, &attrs);
4370 if (! start_function (specs, yyvsp[0].ttype, attrs, 0))
4371 YYERROR1;
4372 reinit_parse_for_function ();
4373 yyval.ttype = NULL_TREE; ;
4374 break;}
73b0fce8 4375case 89:
cf776105 4376#line 688 "parse.y"
861bb6c1
JL
4377{ tree specs, attrs;
4378 split_specs_attrs (yyvsp[-1].ttype, &specs, &attrs);
4379 if (! start_function (specs, yyvsp[0].ttype, attrs, 0))
4380 YYERROR1;
4381 reinit_parse_for_function ();
4382 yyval.ttype = NULL_TREE; ;
4383 break;}
73b0fce8 4384case 90:
cf776105 4385#line 695 "parse.y"
861bb6c1
JL
4386{ if (! start_function (NULL_TREE, yyval.ttype, NULL_TREE, 0))
4387 YYERROR1;
4388 reinit_parse_for_function ();
4389 yyval.ttype = NULL_TREE; ;
4390 break;}
73b0fce8 4391case 91:
cf776105 4392#line 700 "parse.y"
861bb6c1
JL
4393{ tree specs, attrs;
4394 split_specs_attrs (yyvsp[-1].ttype, &specs, &attrs);
4395 if (! start_function (specs, yyvsp[0].ttype, attrs, 0))
4396 YYERROR1;
4397 reinit_parse_for_function ();
4398 yyval.ttype = NULL_TREE; ;
4399 break;}
73b0fce8 4400case 92:
cf776105 4401#line 707 "parse.y"
861bb6c1
JL
4402{ if (! start_function (NULL_TREE, yyval.ttype, NULL_TREE, 0))
4403 YYERROR1;
4404 reinit_parse_for_function ();
4405 yyval.ttype = NULL_TREE; ;
4406 break;}
73b0fce8 4407case 93:
cf776105 4408#line 715 "parse.y"
861bb6c1
JL
4409{ yyval.ttype = make_call_declarator (yyvsp[-5].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4410 break;}
73b0fce8 4411case 94:
cf776105 4412#line 717 "parse.y"
861bb6c1
JL
4413{ yyval.ttype = make_call_declarator (yyvsp[-3].ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype); ;
4414 break;}
73b0fce8 4415case 95:
cf776105 4416#line 719 "parse.y"
861bb6c1
JL
4417{ yyval.ttype = make_call_declarator (yyvsp[-5].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
4418 break;}
73b0fce8 4419case 96:
cf776105 4420#line 721 "parse.y"
861bb6c1
JL
4421{ yyval.ttype = make_call_declarator (yyvsp[-3].ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype); ;
4422 break;}
73b0fce8 4423case 97:
cf776105 4424#line 728 "parse.y"
861bb6c1
JL
4425{ tree specs = strip_attrs (yyvsp[-1].ttype);
4426 yyval.ttype = start_method (specs, yyvsp[0].ttype);
4427 rest_of_mdef:
4428 if (! yyval.ttype)
4429 YYERROR1;
4430 if (yychar == YYEMPTY)
4431 yychar = YYLEX;
4432 reinit_parse_for_method (yychar, yyval.ttype); ;
4433 break;}
73b0fce8 4434case 98:
cf776105 4435#line 737 "parse.y"
861bb6c1
JL
4436{ yyval.ttype = start_method (NULL_TREE, yyvsp[0].ttype); goto rest_of_mdef; ;
4437 break;}
73b0fce8 4438case 99:
cf776105 4439#line 739 "parse.y"
861bb6c1
JL
4440{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
4441 yyval.ttype = start_method (specs, yyvsp[0].ttype); goto rest_of_mdef; ;
4442 break;}
73b0fce8 4443case 100:
cf776105 4444#line 742 "parse.y"
861bb6c1
JL
4445{ tree specs = strip_attrs (yyvsp[-1].ttype);
4446 yyval.ttype = start_method (specs, yyvsp[0].ttype); goto rest_of_mdef; ;
4447 break;}
73b0fce8 4448case 101:
cf776105 4449#line 745 "parse.y"
861bb6c1
JL
4450{ yyval.ttype = start_method (NULL_TREE, yyval.ttype); goto rest_of_mdef; ;
4451 break;}
73b0fce8 4452case 102:
cf776105 4453#line 747 "parse.y"
861bb6c1
JL
4454{ tree specs = strip_attrs (yyvsp[-1].ttype);
4455 yyval.ttype = start_method (specs, yyvsp[0].ttype); goto rest_of_mdef; ;
4456 break;}
73b0fce8 4457case 103:
cf776105 4458#line 750 "parse.y"
861bb6c1
JL
4459{ yyval.ttype = start_method (NULL_TREE, yyval.ttype); goto rest_of_mdef; ;
4460 break;}
73b0fce8 4461case 104:
cf776105 4462#line 752 "parse.y"
6a88a0c0 4463{ yyval.ttype = finish_member_template_decl (yyvsp[-1].ttype, yyvsp[0].ttype); ;
a2676865 4464 break;}
73b0fce8 4465case 105:
cf776105 4466#line 757 "parse.y"
861bb6c1
JL
4467{
4468 if (! current_function_parms_stored)
4469 store_parm_decls ();
4470 yyval.ttype = yyvsp[0].ttype;
4471 ;
4472 break;}
73b0fce8 4473case 106:
cf776105 4474#line 766 "parse.y"
861bb6c1
JL
4475{ store_return_init (yyval.ttype, yyvsp[0].ttype); ;
4476 break;}
73b0fce8 4477case 107:
cf776105 4478#line 768 "parse.y"
861bb6c1
JL
4479{ store_return_init (yyval.ttype, yyvsp[-1].ttype); ;
4480 break;}
73b0fce8 4481case 108:
cf776105 4482#line 770 "parse.y"
861bb6c1
JL
4483{ store_return_init (yyval.ttype, NULL_TREE); ;
4484 break;}
73b0fce8 4485case 109:
cf776105 4486#line 775 "parse.y"
861bb6c1
JL
4487{
4488 if (yyvsp[0].itype == 0)
4489 error ("no base initializers given following ':'");
4490 setup_vtbl_ptr ();
4491 /* Always keep the BLOCK node associated with the outermost
4492 pair of curley braces of a function. These are needed
4493 for correct operation of dwarfout.c. */
4494 keep_next_level ();
4495 ;
4496 break;}
73b0fce8 4497case 110:
cf776105 4498#line 788 "parse.y"
861bb6c1
JL
4499{
4500 if (! current_function_parms_stored)
4501 store_parm_decls ();
4502
4503 if (DECL_CONSTRUCTOR_P (current_function_decl))
4504 {
4505 /* Make a contour for the initializer list. */
4506 pushlevel (0);
4507 clear_last_expr ();
4508 expand_start_bindings (0);
4509 }
4510 else if (current_class_type == NULL_TREE)
4511 error ("base initializers not allowed for non-member functions");
4512 else if (! DECL_CONSTRUCTOR_P (current_function_decl))
4513 error ("only constructors take base initializers");
4514 ;
4515 break;}
73b0fce8 4516case 111:
cf776105 4517#line 808 "parse.y"
861bb6c1
JL
4518{ yyval.itype = 0; ;
4519 break;}
73b0fce8 4520case 112:
cf776105 4521#line 810 "parse.y"
861bb6c1
JL
4522{ yyval.itype = 1; ;
4523 break;}
73b0fce8 4524case 115:
cf776105 4525#line 817 "parse.y"
861bb6c1
JL
4526{
4527 if (current_class_name)
4528 pedwarn ("anachronistic old style base class initializer");
4529 expand_member_init (current_class_ref, NULL_TREE, yyvsp[-1].ttype);
4530 ;
4531 break;}
73b0fce8 4532case 116:
cf776105 4533#line 823 "parse.y"
861bb6c1
JL
4534{
4535 if (current_class_name)
4536 pedwarn ("anachronistic old style base class initializer");
4537 expand_member_init (current_class_ref, NULL_TREE, void_type_node);
4538 ;
4539 break;}
73b0fce8 4540case 117:
cf776105 4541#line 829 "parse.y"
861bb6c1
JL
4542{ expand_member_init (current_class_ref, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
4543 break;}
73b0fce8 4544case 118:
cf776105 4545#line 831 "parse.y"
861bb6c1
JL
4546{ expand_member_init (current_class_ref, yyvsp[-1].ttype, void_type_node); ;
4547 break;}
73b0fce8 4548case 119:
cf776105 4549#line 833 "parse.y"
861bb6c1
JL
4550{ expand_member_init (current_class_ref, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
4551 break;}
73b0fce8 4552case 120:
cf776105 4553#line 835 "parse.y"
861bb6c1
JL
4554{ expand_member_init (current_class_ref, yyvsp[-1].ttype, void_type_node); ;
4555 break;}
73b0fce8 4556case 121:
cf776105 4557#line 837 "parse.y"
faf199a6
JM
4558{ expand_member_init (current_class_ref, TYPE_MAIN_DECL (yyvsp[-3].ttype),
4559 yyvsp[-1].ttype); ;
861bb6c1 4560 break;}
73b0fce8 4561case 122:
cf776105 4562#line 840 "parse.y"
faf199a6
JM
4563{ expand_member_init (current_class_ref, TYPE_MAIN_DECL (yyvsp[-1].ttype),
4564 void_type_node); ;
861bb6c1 4565 break;}
73b0fce8 4566case 134:
cf776105 4567#line 866 "parse.y"
a2676865
JM
4568{ do_type_instantiation (yyvsp[-1].ftype.t, NULL_TREE);
4569 yyungetc (';', 1); ;
861bb6c1 4570 break;}
73b0fce8 4571case 136:
cf776105 4572#line 870 "parse.y"
a2676865
JM
4573{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
4574 do_decl_instantiation (specs, yyvsp[0].ttype, NULL_TREE); ;
861bb6c1 4575 break;}
73b0fce8 4576case 138:
cf776105 4577#line 874 "parse.y"
861bb6c1
JL
4578{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;
4579 break;}
73b0fce8 4580case 140:
cf776105 4581#line 877 "parse.y"
a2676865 4582{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;
861bb6c1 4583 break;}
73b0fce8 4584case 142:
cf776105 4585#line 880 "parse.y"
6a88a0c0 4586{ do_type_instantiation (yyvsp[-1].ftype.t, yyvsp[-4].ttype);
a2676865 4587 yyungetc (';', 1); ;
861bb6c1 4588 break;}
73b0fce8 4589case 144:
cf776105 4590#line 885 "parse.y"
a2676865 4591{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
6a88a0c0 4592 do_decl_instantiation (specs, yyvsp[0].ttype, yyvsp[-4].ttype); ;
861bb6c1 4593 break;}
73b0fce8 4594case 146:
cf776105 4595#line 889 "parse.y"
6a88a0c0 4596{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, yyvsp[-3].ttype); ;
861bb6c1 4597 break;}
73b0fce8 4598case 148:
cf776105 4599#line 892 "parse.y"
6a88a0c0 4600{ do_decl_instantiation (NULL_TREE, yyvsp[0].ttype, yyvsp[-3].ttype); ;
861bb6c1 4601 break;}
73b0fce8 4602case 150:
cf776105 4603#line 897 "parse.y"
6a88a0c0
JM
4604{ begin_explicit_instantiation(); ;
4605 break;}
73b0fce8 4606case 151:
cf776105 4607#line 900 "parse.y"
6a88a0c0 4608{ end_explicit_instantiation(); ;
861bb6c1 4609 break;}
73b0fce8 4610case 152:
cf776105 4611#line 908 "parse.y"
861bb6c1 4612{
6a88a0c0 4613 yyval.ttype = lookup_template_class (yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE, NULL_TREE);
861bb6c1
JL
4614 if (yyval.ttype != error_mark_node)
4615 yyval.ttype = TYPE_STUB_DECL (yyval.ttype);
4616 ;
4617 break;}
73b0fce8 4618case 153:
cf776105 4619#line 914 "parse.y"
861bb6c1 4620{
6a88a0c0 4621 yyval.ttype = lookup_template_class (yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE, NULL_TREE);
861bb6c1
JL
4622 if (yyval.ttype != error_mark_node)
4623 yyval.ttype = TYPE_STUB_DECL (yyval.ttype);
4624 ;
4625 break;}
73b0fce8 4626case 155:
cf776105 4627#line 924 "parse.y"
861bb6c1 4628{
6a88a0c0 4629 yyval.ttype = lookup_template_class (yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE, NULL_TREE);
861bb6c1
JL
4630 if (yyval.ttype != error_mark_node)
4631 yyval.ttype = TYPE_STUB_DECL (yyval.ttype);
4632 ;
4633 break;}
73b0fce8 4634case 157:
cf776105 4635#line 934 "parse.y"
861bb6c1
JL
4636{
4637 /* Handle `Class<Class<Type>>' without space in the `>>' */
4638 pedwarn ("`>>' should be `> >' in template class name");
4639 yyungetc ('>', 1);
4640 ;
4641 break;}
73b0fce8 4642case 158:
cf776105 4643#line 943 "parse.y"
6a88a0c0
JM
4644{ yyval.ttype = NULL_TREE; ;
4645 break;}
73b0fce8 4646case 160:
cf776105 4647#line 949 "parse.y"
861bb6c1
JL
4648{ yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
4649 break;}
73b0fce8 4650case 161:
cf776105 4651#line 951 "parse.y"
861bb6c1
JL
4652{ yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
4653 break;}
73b0fce8 4654case 162:
cf776105 4655#line 956 "parse.y"
861bb6c1
JL
4656{ yyval.ttype = groktypename (yyvsp[0].ftype.t); ;
4657 break;}
cf776105
JM
4658case 164:
4659#line 962 "parse.y"
861bb6c1
JL
4660{ yyval.code = NEGATE_EXPR; ;
4661 break;}
cf776105
JM
4662case 165:
4663#line 964 "parse.y"
861bb6c1
JL
4664{ yyval.code = CONVERT_EXPR; ;
4665 break;}
cf776105
JM
4666case 166:
4667#line 966 "parse.y"
861bb6c1
JL
4668{ yyval.code = PREINCREMENT_EXPR; ;
4669 break;}
cf776105
JM
4670case 167:
4671#line 968 "parse.y"
861bb6c1
JL
4672{ yyval.code = PREDECREMENT_EXPR; ;
4673 break;}
cf776105
JM
4674case 168:
4675#line 970 "parse.y"
861bb6c1
JL
4676{ yyval.code = TRUTH_NOT_EXPR; ;
4677 break;}
cf776105
JM
4678case 169:
4679#line 975 "parse.y"
861bb6c1
JL
4680{ yyval.ttype = build_x_compound_expr (yyval.ttype); ;
4681 break;}
cf776105
JM
4682case 171:
4683#line 981 "parse.y"
861bb6c1
JL
4684{ error ("ANSI C++ forbids an empty condition for `%s'",
4685 cond_stmt_keyword);
4686 yyval.ttype = integer_zero_node; ;
4687 break;}
cf776105
JM
4688case 172:
4689#line 985 "parse.y"
861bb6c1
JL
4690{ yyval.ttype = condition_conversion (yyvsp[-1].ttype); ;
4691 break;}
cf776105
JM
4692case 173:
4693#line 990 "parse.y"
861bb6c1
JL
4694{ error ("ANSI C++ forbids an empty condition for `%s'",
4695 cond_stmt_keyword);
4696 yyval.ttype = integer_zero_node; ;
4697 break;}
cf776105
JM
4698case 174:
4699#line 994 "parse.y"
861bb6c1
JL
4700{ yyval.ttype = condition_conversion (yyvsp[-1].ttype); ;
4701 break;}
cf776105
JM
4702case 175:
4703#line 999 "parse.y"
861bb6c1
JL
4704{ yyval.ttype = NULL_TREE; ;
4705 break;}
cf776105
JM
4706case 176:
4707#line 1001 "parse.y"
861bb6c1
JL
4708{ yyval.ttype = condition_conversion (yyval.ttype); ;
4709 break;}
cf776105
JM
4710case 177:
4711#line 1003 "parse.y"
861bb6c1
JL
4712{ yyval.ttype = NULL_TREE; ;
4713 break;}
cf776105
JM
4714case 178:
4715#line 1008 "parse.y"
861bb6c1
JL
4716{ {
4717 tree d;
4718 for (d = getdecls (); d; d = TREE_CHAIN (d))
4719 if (TREE_CODE (d) == TYPE_DECL) {
4720 tree s = TREE_TYPE (d);
4721 if (TREE_CODE (s) == RECORD_TYPE)
4722 cp_error ("definition of class `%T' in condition", s);
4723 else if (TREE_CODE (s) == ENUMERAL_TYPE)
4724 cp_error ("definition of enum `%T' in condition", s);
4725 }
4726 }
4727 current_declspecs = yyvsp[-4].ftype.t;
4728 yyvsp[0].itype = suspend_momentary ();
4729 yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1);
4730 cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype,
4731 /*prefix_attributes*/ NULL_TREE);
4732 ;
4733 break;}
cf776105
JM
4734case 179:
4735#line 1026 "parse.y"
861bb6c1
JL
4736{
4737 cp_finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-3].ttype, 1, LOOKUP_ONLYCONVERTING);
4738 resume_momentary (yyvsp[-2].itype);
4739 yyval.ttype = yyvsp[-1].ttype;
4740 if (TREE_CODE (TREE_TYPE (yyval.ttype)) == ARRAY_TYPE)
4741 cp_error ("definition of array `%#D' in condition", yyval.ttype);
4742 ;
4743 break;}
cf776105
JM
4744case 185:
4745#line 1045 "parse.y"
861bb6c1
JL
4746{
4747 if (processing_template_decl)
4748 {
4749 yyval.ttype = build_min_nt (COMPOUND_STMT, NULL_TREE);
4750 COMPOUND_STMT_NO_SCOPE (yyval.ttype) = 1;
4751 add_tree (yyval.ttype);
4752 }
4753 ;
4754 break;}
cf776105
JM
4755case 186:
4756#line 1054 "parse.y"
861bb6c1
JL
4757{
4758 if (processing_template_decl)
4759 {
4760 TREE_OPERAND (yyvsp[-1].ttype, 0) = TREE_CHAIN (yyvsp[-1].ttype);
4761 TREE_CHAIN (yyvsp[-1].ttype) = NULL_TREE;
4762 last_tree = yyvsp[-1].ttype;
4763 }
4764 finish_stmt ();
4765 ;
4766 break;}
cf776105
JM
4767case 188:
4768#line 1069 "parse.y"
1f479842
JM
4769{ yyval.ttype = expr_tree_cons (NULL_TREE, yyval.ttype,
4770 build_expr_list (NULL_TREE, yyvsp[0].ttype)); ;
861bb6c1 4771 break;}
cf776105
JM
4772case 189:
4773#line 1072 "parse.y"
1f479842
JM
4774{ yyval.ttype = expr_tree_cons (NULL_TREE, yyval.ttype,
4775 build_expr_list (NULL_TREE, error_mark_node)); ;
861bb6c1 4776 break;}
cf776105
JM
4777case 190:
4778#line 1075 "parse.y"
1f479842 4779{ chainon (yyval.ttype, build_expr_list (NULL_TREE, yyvsp[0].ttype)); ;
861bb6c1 4780 break;}
cf776105
JM
4781case 191:
4782#line 1077 "parse.y"
1f479842 4783{ chainon (yyval.ttype, build_expr_list (NULL_TREE, error_mark_node)); ;
861bb6c1 4784 break;}
cf776105
JM
4785case 192:
4786#line 1082 "parse.y"
1f479842 4787{ yyval.ttype = build_expr_list (NULL_TREE, yyval.ttype); ;
861bb6c1 4788 break;}
cf776105
JM
4789case 194:
4790#line 1088 "parse.y"
861bb6c1
JL
4791{ yyval.ttype = yyvsp[0].ttype; ;
4792 break;}
cf776105
JM
4793case 195:
4794#line 1091 "parse.y"
861bb6c1
JL
4795{ yyval.ttype = yyvsp[0].ttype;
4796 pedantic = yyvsp[-1].itype; ;
4797 break;}
cf776105
JM
4798case 196:
4799#line 1094 "parse.y"
861bb6c1
JL
4800{ yyval.ttype = build_x_indirect_ref (yyvsp[0].ttype, "unary *"); ;
4801 break;}
cf776105
JM
4802case 197:
4803#line 1096 "parse.y"
861bb6c1
JL
4804{ yyval.ttype = build_x_unary_op (ADDR_EXPR, yyvsp[0].ttype); ;
4805 break;}
cf776105
JM
4806case 198:
4807#line 1098 "parse.y"
861bb6c1
JL
4808{ yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, yyvsp[0].ttype); ;
4809 break;}
cf776105
JM
4810case 199:
4811#line 1100 "parse.y"
861bb6c1
JL
4812{ yyval.ttype = build_x_unary_op (yyvsp[-1].code, yyvsp[0].ttype);
4813 if (yyvsp[-1].code == NEGATE_EXPR && TREE_CODE (yyvsp[0].ttype) == INTEGER_CST)
4814 TREE_NEGATED_INT (yyval.ttype) = 1;
4815 overflow_warning (yyval.ttype);
4816 ;
4817 break;}
cf776105
JM
4818case 200:
4819#line 1107 "parse.y"
861bb6c1 4820{ tree label = lookup_label (yyvsp[0].ttype);
16540e1b
JM
4821 if (pedantic)
4822 pedwarn ("ANSI C++ forbids `&&'");
861bb6c1
JL
4823 if (label == NULL_TREE)
4824 yyval.ttype = null_pointer_node;
4825 else
4826 {
4827 TREE_USED (label) = 1;
4828 yyval.ttype = build1 (ADDR_EXPR, ptr_type_node, label);
4829 TREE_CONSTANT (yyval.ttype) = 1;
4830 }
4831 ;
4832 break;}
cf776105
JM
4833case 201:
4834#line 1120 "parse.y"
861bb6c1
JL
4835{ yyval.ttype = expr_sizeof (yyvsp[0].ttype); ;
4836 break;}
cf776105
JM
4837case 202:
4838#line 1122 "parse.y"
861bb6c1
JL
4839{ yyval.ttype = c_sizeof (groktypename (yyvsp[-1].ftype.t)); ;
4840 break;}
cf776105
JM
4841case 203:
4842#line 1124 "parse.y"
861bb6c1
JL
4843{ yyval.ttype = grok_alignof (yyvsp[0].ttype); ;
4844 break;}
cf776105
JM
4845case 204:
4846#line 1126 "parse.y"
861bb6c1
JL
4847{ yyval.ttype = c_alignof (groktypename (yyvsp[-1].ftype.t));
4848 check_for_new_type ("alignof", yyvsp[-1].ftype); ;
4849 break;}
cf776105
JM
4850case 205:
4851#line 1132 "parse.y"
861bb6c1
JL
4852{ yyval.ttype = build_new (NULL_TREE, yyvsp[0].ftype.t, NULL_TREE, yyvsp[-1].itype);
4853 check_for_new_type ("new", yyvsp[0].ftype); ;
4854 break;}
cf776105
JM
4855case 206:
4856#line 1135 "parse.y"
861bb6c1
JL
4857{ yyval.ttype = build_new (NULL_TREE, yyvsp[-1].ftype.t, yyvsp[0].ttype, yyvsp[-2].itype);
4858 check_for_new_type ("new", yyvsp[-1].ftype); ;
4859 break;}
cf776105
JM
4860case 207:
4861#line 1138 "parse.y"
861bb6c1
JL
4862{ yyval.ttype = build_new (yyvsp[-1].ttype, yyvsp[0].ftype.t, NULL_TREE, yyvsp[-2].itype);
4863 check_for_new_type ("new", yyvsp[0].ftype); ;
4864 break;}
cf776105
JM
4865case 208:
4866#line 1141 "parse.y"
861bb6c1
JL
4867{ yyval.ttype = build_new (yyvsp[-2].ttype, yyvsp[-1].ftype.t, yyvsp[0].ttype, yyvsp[-3].itype);
4868 check_for_new_type ("new", yyvsp[-1].ftype); ;
4869 break;}
cf776105
JM
4870case 209:
4871#line 1144 "parse.y"
861bb6c1
JL
4872{ yyval.ttype = build_new (NULL_TREE, groktypename(yyvsp[-1].ftype.t),
4873 NULL_TREE, yyvsp[-3].itype);
4874 check_for_new_type ("new", yyvsp[-1].ftype); ;
4875 break;}
cf776105
JM
4876case 210:
4877#line 1148 "parse.y"
861bb6c1
JL
4878{ yyval.ttype = build_new (NULL_TREE, groktypename(yyvsp[-2].ftype.t), yyvsp[0].ttype, yyvsp[-4].itype);
4879 check_for_new_type ("new", yyvsp[-2].ftype); ;
4880 break;}
cf776105
JM
4881case 211:
4882#line 1151 "parse.y"
861bb6c1
JL
4883{ yyval.ttype = build_new (yyvsp[-3].ttype, groktypename(yyvsp[-1].ftype.t), NULL_TREE, yyvsp[-4].itype);
4884 check_for_new_type ("new", yyvsp[-1].ftype); ;
4885 break;}
cf776105
JM
4886case 212:
4887#line 1154 "parse.y"
861bb6c1
JL
4888{ yyval.ttype = build_new (yyvsp[-4].ttype, groktypename(yyvsp[-2].ftype.t), yyvsp[0].ttype, yyvsp[-5].itype);
4889 check_for_new_type ("new", yyvsp[-2].ftype); ;
4890 break;}
cf776105
JM
4891case 213:
4892#line 1158 "parse.y"
861bb6c1
JL
4893{ yyval.ttype = delete_sanity (yyvsp[0].ttype, NULL_TREE, 0, yyvsp[-1].itype); ;
4894 break;}
cf776105
JM
4895case 214:
4896#line 1160 "parse.y"
861bb6c1
JL
4897{ yyval.ttype = delete_sanity (yyvsp[0].ttype, NULL_TREE, 1, yyvsp[-3].itype);
4898 if (yychar == YYEMPTY)
4899 yychar = YYLEX; ;
4900 break;}
cf776105
JM
4901case 215:
4902#line 1164 "parse.y"
861bb6c1
JL
4903{ yyval.ttype = delete_sanity (yyvsp[0].ttype, yyvsp[-2].ttype, 2, yyvsp[-4].itype);
4904 if (yychar == YYEMPTY)
4905 yychar = YYLEX; ;
4906 break;}
cf776105
JM
4907case 216:
4908#line 1168 "parse.y"
861bb6c1
JL
4909{ yyval.ttype = build_x_unary_op (REALPART_EXPR, yyvsp[0].ttype); ;
4910 break;}
cf776105
JM
4911case 217:
4912#line 1170 "parse.y"
861bb6c1
JL
4913{ yyval.ttype = build_x_unary_op (IMAGPART_EXPR, yyvsp[0].ttype); ;
4914 break;}
cf776105
JM
4915case 218:
4916#line 1175 "parse.y"
861bb6c1
JL
4917{ yyval.ttype = yyvsp[-1].ttype; ;
4918 break;}
cf776105
JM
4919case 219:
4920#line 1177 "parse.y"
861bb6c1
JL
4921{
4922 yyval.ttype = yyvsp[-1].ttype;
4923 pedwarn ("old style placement syntax, use () instead");
4924 ;
4925 break;}
cf776105
JM
4926case 220:
4927#line 1185 "parse.y"
861bb6c1
JL
4928{ yyval.ttype = yyvsp[-1].ttype; ;
4929 break;}
cf776105
JM
4930case 221:
4931#line 1187 "parse.y"
861bb6c1
JL
4932{ yyval.ttype = NULL_TREE; ;
4933 break;}
cf776105
JM
4934case 222:
4935#line 1189 "parse.y"
861bb6c1
JL
4936{
4937 cp_error ("`%T' is not a valid expression", yyvsp[-1].ftype.t);
4938 yyval.ttype = error_mark_node;
4939 ;
4940 break;}
cf776105
JM
4941case 223:
4942#line 1197 "parse.y"
861bb6c1
JL
4943{
4944 if (pedantic)
4945 pedwarn ("ANSI C++ forbids initialization of new expression with `='");
4946 yyval.ttype = yyvsp[0].ttype;
4947 ;
4948 break;}
cf776105
JM
4949case 224:
4950#line 1207 "parse.y"
861bb6c1
JL
4951{ yyvsp[-1].ftype.t = tree_cons (NULL_TREE, yyvsp[-1].ftype.t, void_list_node);
4952 TREE_PARMLIST (yyvsp[-1].ftype.t) = 1;
4953 yyval.ttype = make_call_declarator (NULL_TREE, yyvsp[-1].ftype.t, NULL_TREE, NULL_TREE);
4954 check_for_new_type ("cast", yyvsp[-1].ftype); ;
4955 break;}
cf776105
JM
4956case 225:
4957#line 1212 "parse.y"
861bb6c1
JL
4958{ yyvsp[-1].ftype.t = tree_cons (NULL_TREE, yyvsp[-1].ftype.t, void_list_node);
4959 TREE_PARMLIST (yyvsp[-1].ftype.t) = 1;
4960 yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-1].ftype.t, NULL_TREE, NULL_TREE);
4961 check_for_new_type ("cast", yyvsp[-1].ftype); ;
4962 break;}
cf776105
JM
4963case 227:
4964#line 1221 "parse.y"
861bb6c1
JL
4965{ yyval.ttype = reparse_absdcl_as_casts (yyval.ttype, yyvsp[0].ttype); ;
4966 break;}
cf776105
JM
4967case 228:
4968#line 1223 "parse.y"
861bb6c1
JL
4969{
4970 tree init = build_nt (CONSTRUCTOR, NULL_TREE,
4971 nreverse (yyvsp[-2].ttype));
4972 if (pedantic)
4973 pedwarn ("ANSI C++ forbids constructor-expressions");
4974 /* Indicate that this was a GNU C constructor expression. */
4975 TREE_HAS_CONSTRUCTOR (init) = 1;
4976
4977 yyval.ttype = reparse_absdcl_as_casts (yyval.ttype, init);
4978 ;
4979 break;}
cf776105
JM
4980case 230:
4981#line 1239 "parse.y"
a2676865 4982{ yyval.ttype = build_x_binary_op (MEMBER_REF, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 4983 break;}
cf776105
JM
4984case 231:
4985#line 1241 "parse.y"
a2676865 4986{ yyval.ttype = build_m_component_ref (yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 4987 break;}
cf776105
JM
4988case 232:
4989#line 1243 "parse.y"
4990{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
4991 break;}
4992case 233:
4993#line 1245 "parse.y"
4994{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
4995 break;}
73b0fce8 4996case 234:
cf776105 4997#line 1247 "parse.y"
861bb6c1
JL
4998{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
4999 break;}
73b0fce8 5000case 235:
cf776105 5001#line 1249 "parse.y"
861bb6c1
JL
5002{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5003 break;}
73b0fce8 5004case 236:
cf776105 5005#line 1251 "parse.y"
861bb6c1
JL
5006{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5007 break;}
73b0fce8 5008case 237:
cf776105 5009#line 1253 "parse.y"
861bb6c1
JL
5010{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5011 break;}
73b0fce8 5012case 238:
cf776105 5013#line 1255 "parse.y"
861bb6c1
JL
5014{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5015 break;}
73b0fce8 5016case 239:
cf776105 5017#line 1257 "parse.y"
861bb6c1
JL
5018{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5019 break;}
73b0fce8 5020case 240:
cf776105
JM
5021#line 1259 "parse.y"
5022{ yyval.ttype = build_x_binary_op (LT_EXPR, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5023 break;}
73b0fce8 5024case 241:
cf776105
JM
5025#line 1261 "parse.y"
5026{ yyval.ttype = build_x_binary_op (GT_EXPR, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5027 break;}
73b0fce8 5028case 242:
cf776105
JM
5029#line 1263 "parse.y"
5030{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5031 break;}
73b0fce8 5032case 243:
cf776105
JM
5033#line 1265 "parse.y"
5034{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5035 break;}
73b0fce8 5036case 244:
cf776105 5037#line 1267 "parse.y"
861bb6c1
JL
5038{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5039 break;}
73b0fce8 5040case 245:
cf776105 5041#line 1269 "parse.y"
861bb6c1
JL
5042{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5043 break;}
73b0fce8 5044case 246:
cf776105 5045#line 1271 "parse.y"
861bb6c1
JL
5046{ yyval.ttype = build_x_binary_op (yyvsp[-1].code, yyval.ttype, yyvsp[0].ttype); ;
5047 break;}
73b0fce8 5048case 247:
cf776105 5049#line 1273 "parse.y"
a2676865 5050{ yyval.ttype = build_x_binary_op (TRUTH_ANDIF_EXPR, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5051 break;}
cf776105
JM
5052case 248:
5053#line 1275 "parse.y"
a2676865 5054{ yyval.ttype = build_x_binary_op (TRUTH_ORIF_EXPR, yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 5055 break;}
cf776105
JM
5056case 249:
5057#line 1277 "parse.y"
a2676865
JM
5058{ yyval.ttype = build_x_conditional_expr (yyval.ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
5059 break;}
cf776105
JM
5060case 250:
5061#line 1279 "parse.y"
861bb6c1
JL
5062{ yyval.ttype = build_x_modify_expr (yyval.ttype, NOP_EXPR, yyvsp[0].ttype);
5063 if (yyval.ttype != error_mark_node)
5064 C_SET_EXP_ORIGINAL_CODE (yyval.ttype, MODIFY_EXPR); ;
5065 break;}
cf776105
JM
5066case 251:
5067#line 1283 "parse.y"
a2676865 5068{ yyval.ttype = build_x_modify_expr (yyval.ttype, yyvsp[-1].code, yyvsp[0].ttype); ;
861bb6c1 5069 break;}
cf776105
JM
5070case 252:
5071#line 1285 "parse.y"
a2676865 5072{ yyval.ttype = build_throw (NULL_TREE); ;
861bb6c1 5073 break;}
cf776105
JM
5074case 253:
5075#line 1287 "parse.y"
a2676865
JM
5076{ yyval.ttype = build_throw (yyvsp[0].ttype); ;
5077 break;}
cf776105
JM
5078case 254:
5079#line 1305 "parse.y"
861bb6c1
JL
5080{ yyval.ttype = build_parse_node (BIT_NOT_EXPR, yyvsp[0].ttype); ;
5081 break;}
cf776105
JM
5082case 260:
5083#line 1314 "parse.y"
956d6950 5084{ yyval.ttype = do_identifier (yyvsp[-1].ttype, 1); ;
386b8a85 5085 break;}
cf776105
JM
5086case 261:
5087#line 1318 "parse.y"
956d6950 5088{ yyval.ttype = lookup_template_function (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
386b8a85 5089 break;}
cf776105
JM
5090case 262:
5091#line 1320 "parse.y"
956d6950 5092{ yyval.ttype = lookup_template_function (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
861bb6c1 5093 break;}
cf776105
JM
5094case 263:
5095#line 1325 "parse.y"
956d6950 5096{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
386b8a85 5097 break;}
cf776105
JM
5098case 264:
5099#line 1327 "parse.y"
956d6950 5100{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
386b8a85 5101 break;}
cf776105
JM
5102case 265:
5103#line 1330 "parse.y"
956d6950 5104{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
386b8a85 5105 break;}
cf776105
JM
5106case 270:
5107#line 1342 "parse.y"
956d6950 5108{ yyval.ttype = build_parse_node (INDIRECT_REF, yyvsp[0].ttype); ;
386b8a85 5109 break;}
cf776105
JM
5110case 271:
5111#line 1344 "parse.y"
956d6950 5112{ yyval.ttype = build_parse_node (ADDR_EXPR, yyvsp[0].ttype); ;
861bb6c1 5113 break;}
cf776105
JM
5114case 272:
5115#line 1346 "parse.y"
956d6950 5116{ yyval.ttype = yyvsp[-1].ttype; ;
386b8a85 5117 break;}
cf776105
JM
5118case 273:
5119#line 1351 "parse.y"
386b8a85
JM
5120{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
5121 break;}
cf776105
JM
5122case 274:
5123#line 1353 "parse.y"
956d6950 5124{ yyval.ttype = lookup_template_function (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
861bb6c1 5125 break;}
cf776105
JM
5126case 278:
5127#line 1361 "parse.y"
956d6950
JL
5128{ yyval.ttype = finish_decl_parsing (yyvsp[-1].ttype); ;
5129 break;}
cf776105
JM
5130case 279:
5131#line 1366 "parse.y"
861bb6c1
JL
5132{
5133 if (TREE_CODE (yyval.ttype) == BIT_NOT_EXPR)
5134 yyval.ttype = build_x_unary_op (BIT_NOT_EXPR, TREE_OPERAND (yyval.ttype, 0));
386b8a85 5135 else if (TREE_CODE (yyval.ttype) != TEMPLATE_ID_EXPR)
cf776105 5136 yyval.ttype = do_identifier (yyval.ttype, 1);
861bb6c1
JL
5137 ;
5138 break;}
cf776105
JM
5139case 282:
5140#line 1375 "parse.y"
861bb6c1
JL
5141{
5142 if (processing_template_decl)
5143 push_obstacks (&permanent_obstack, &permanent_obstack);
5144 yyval.ttype = combine_strings (yyval.ttype);
5145 if (processing_template_decl)
5146 pop_obstacks ();
5147 ;
5148 break;}
cf776105
JM
5149case 283:
5150#line 1383 "parse.y"
861bb6c1
JL
5151{ char class;
5152 yyval.ttype = yyvsp[-1].ttype;
5153 class = TREE_CODE_CLASS (TREE_CODE (yyval.ttype));
5154 if (class == 'e' || class == '1'
5155 || class == '2' || class == '<')
5156 /* This inhibits warnings in truthvalue_conversion. */
5157 C_SET_EXP_ORIGINAL_CODE (yyval.ttype, ERROR_MARK); ;
5158 break;}
cf776105
JM
5159case 284:
5160#line 1391 "parse.y"
861bb6c1
JL
5161{ char class;
5162 yyval.ttype = reparse_decl_as_expr (NULL_TREE, yyvsp[-1].ttype);
5163 class = TREE_CODE_CLASS (TREE_CODE (yyval.ttype));
5164 if (class == 'e' || class == '1'
5165 || class == '2' || class == '<')
5166 /* This inhibits warnings in truthvalue_conversion. */
5167 C_SET_EXP_ORIGINAL_CODE (yyval.ttype, ERROR_MARK); ;
5168 break;}
cf776105
JM
5169case 285:
5170#line 1399 "parse.y"
861bb6c1
JL
5171{ yyval.ttype = error_mark_node; ;
5172 break;}
cf776105
JM
5173case 286:
5174#line 1401 "parse.y"
861bb6c1
JL
5175{ if (current_function_decl == 0)
5176 {
5177 error ("braced-group within expression allowed only inside a function");
5178 YYERROR;
5179 }
5180 keep_next_level ();
67da3287
MM
5181 if (!processing_template_decl)
5182 yyval.ttype = expand_start_stmt_expr ();
5183 else
5184 yyval.ttype = NULL_TREE;
5185 ;
861bb6c1 5186 break;}
cf776105
JM
5187case 287:
5188#line 1413 "parse.y"
861bb6c1
JL
5189{ tree rtl_exp;
5190 if (pedantic)
5191 pedwarn ("ANSI C++ forbids braced-groups within expressions");
67da3287
MM
5192 if (!processing_template_decl)
5193 {
5194 rtl_exp = expand_end_stmt_expr (yyvsp[-2].ttype);
5195 /* The statements have side effects, so the
5196 group does. */
5197 TREE_SIDE_EFFECTS (rtl_exp) = 1;
5198 }
861bb6c1
JL
5199
5200 if (TREE_CODE (yyvsp[-1].ttype) == BLOCK)
5201 {
5202 /* Make a BIND_EXPR for the BLOCK already made. */
67da3287
MM
5203 if (processing_template_decl)
5204 yyval.ttype = build (BIND_EXPR, NULL_TREE,
5205 NULL_TREE, last_tree, yyvsp[-1].ttype);
5206 else
5207 yyval.ttype = build (BIND_EXPR, TREE_TYPE (rtl_exp),
5208 NULL_TREE, rtl_exp, yyvsp[-1].ttype);
5209
861bb6c1
JL
5210 /* Remove the block from the tree at this point.
5211 It gets put back at the proper place
5212 when the BIND_EXPR is expanded. */
5213 delete_block (yyvsp[-1].ttype);
5214 }
5215 else
5216 yyval.ttype = yyvsp[-1].ttype;
5217 ;
5218 break;}
cf776105
JM
5219case 288:
5220#line 1443 "parse.y"
861bb6c1
JL
5221{
5222 yyval.ttype = build_x_function_call (yyvsp[-3].ttype, yyvsp[-1].ttype, current_class_ref);
5223 if (TREE_CODE (yyval.ttype) == CALL_EXPR
5224 && TREE_TYPE (yyval.ttype) != void_type_node)
5225 yyval.ttype = require_complete_type (yyval.ttype);
5226 ;
5227 break;}
cf776105
JM
5228case 289:
5229#line 1450 "parse.y"
861bb6c1
JL
5230{
5231 yyval.ttype = build_x_function_call (yyval.ttype, NULL_TREE, current_class_ref);
5232 if (TREE_CODE (yyval.ttype) == CALL_EXPR
5233 && TREE_TYPE (yyval.ttype) != void_type_node)
5234 yyval.ttype = require_complete_type (yyval.ttype);
5235 ;
5236 break;}
cf776105
JM
5237case 290:
5238#line 1457 "parse.y"
861bb6c1
JL
5239{ yyval.ttype = grok_array_decl (yyval.ttype, yyvsp[-1].ttype); ;
5240 break;}
cf776105
JM
5241case 291:
5242#line 1459 "parse.y"
861bb6c1
JL
5243{ /* If we get an OFFSET_REF, turn it into what it really
5244 means (e.g., a COMPONENT_REF). This way if we've got,
5245 say, a reference to a static member that's being operated
5246 on, we don't end up trying to find a member operator for
5247 the class it's in. */
5248 if (TREE_CODE (yyval.ttype) == OFFSET_REF)
5249 yyval.ttype = resolve_offset_ref (yyval.ttype);
5250 yyval.ttype = build_x_unary_op (POSTINCREMENT_EXPR, yyval.ttype); ;
5251 break;}
cf776105
JM
5252case 292:
5253#line 1468 "parse.y"
861bb6c1
JL
5254{ if (TREE_CODE (yyval.ttype) == OFFSET_REF)
5255 yyval.ttype = resolve_offset_ref (yyval.ttype);
5256 yyval.ttype = build_x_unary_op (POSTDECREMENT_EXPR, yyval.ttype); ;
5257 break;}
cf776105
JM
5258case 293:
5259#line 1473 "parse.y"
861bb6c1
JL
5260{ if (current_class_ptr)
5261 {
5262#ifdef WARNING_ABOUT_CCD
5263 TREE_USED (current_class_ptr) = 1;
5264#endif
5265 yyval.ttype = current_class_ptr;
5266 }
5267 else if (current_function_decl
5268 && DECL_STATIC_FUNCTION_P (current_function_decl))
5269 {
5270 error ("`this' is unavailable for static member functions");
5271 yyval.ttype = error_mark_node;
5272 }
5273 else
5274 {
5275 if (current_function_decl)
5276 error ("invalid use of `this' in non-member function");
5277 else
5278 error ("invalid use of `this' at top level");
5279 yyval.ttype = error_mark_node;
5280 }
5281 ;
5282 break;}
cf776105
JM
5283case 294:
5284#line 1496 "parse.y"
861bb6c1 5285{
a703fb38 5286 tree type = NULL_TREE;
861bb6c1
JL
5287 tree id = yyval.ttype;
5288
5289 /* This is a C cast in C++'s `functional' notation. */
5290 if (yyvsp[-1].ttype == error_mark_node)
5291 {
5292 yyval.ttype = error_mark_node;
5293 break;
5294 }
5295#if 0
5296 if (yyvsp[-1].ttype == NULL_TREE)
5297 {
5298 error ("cannot cast null list to type `%s'",
5299 IDENTIFIER_POINTER (TYPE_NAME (id)));
5300 yyval.ttype = error_mark_node;
5301 break;
5302 }
5303#endif
5304#if 0
5305 /* type is not set! (mrs) */
5306 if (type == error_mark_node)
5307 yyval.ttype = error_mark_node;
5308 else
5309#endif
5310 {
5311 if (id == ridpointers[(int) RID_CONST])
5312 type = build_type_variant (integer_type_node, 1, 0);
5313 else if (id == ridpointers[(int) RID_VOLATILE])
5314 type = build_type_variant (integer_type_node, 0, 1);
5315#if 0
5316 /* should not be able to get here (mrs) */
5317 else if (id == ridpointers[(int) RID_FRIEND])
5318 {
5319 error ("cannot cast expression to `friend' type");
5320 yyval.ttype = error_mark_node;
5321 break;
5322 }
5323#endif
5324 else my_friendly_abort (79);
5325 yyval.ttype = build_c_cast (type, build_compound_expr (yyvsp[-1].ttype));
5326 }
5327 ;
5328 break;}
cf776105
JM
5329case 296:
5330#line 1541 "parse.y"
861bb6c1
JL
5331{ tree type = groktypename (yyvsp[-4].ftype.t);
5332 check_for_new_type ("dynamic_cast", yyvsp[-4].ftype);
5333 yyval.ttype = build_dynamic_cast (type, yyvsp[-1].ttype); ;
5334 break;}
cf776105
JM
5335case 297:
5336#line 1545 "parse.y"
861bb6c1
JL
5337{ tree type = groktypename (yyvsp[-4].ftype.t);
5338 check_for_new_type ("static_cast", yyvsp[-4].ftype);
5339 yyval.ttype = build_static_cast (type, yyvsp[-1].ttype); ;
5340 break;}
cf776105
JM
5341case 298:
5342#line 1549 "parse.y"
861bb6c1
JL
5343{ tree type = groktypename (yyvsp[-4].ftype.t);
5344 check_for_new_type ("reinterpret_cast", yyvsp[-4].ftype);
5345 yyval.ttype = build_reinterpret_cast (type, yyvsp[-1].ttype); ;
5346 break;}
cf776105
JM
5347case 299:
5348#line 1553 "parse.y"
861bb6c1
JL
5349{ tree type = groktypename (yyvsp[-4].ftype.t);
5350 check_for_new_type ("const_cast", yyvsp[-4].ftype);
5351 yyval.ttype = build_const_cast (type, yyvsp[-1].ttype); ;
5352 break;}
cf776105
JM
5353case 300:
5354#line 1557 "parse.y"
861bb6c1
JL
5355{ yyval.ttype = build_x_typeid (yyvsp[-1].ttype); ;
5356 break;}
cf776105
JM
5357case 301:
5358#line 1559 "parse.y"
861bb6c1
JL
5359{ tree type = groktypename (yyvsp[-1].ftype.t);
5360 check_for_new_type ("typeid", yyvsp[-1].ftype);
5361 yyval.ttype = get_typeid (TYPE_MAIN_VARIANT (type)); ;
5362 break;}
cf776105
JM
5363case 302:
5364#line 1563 "parse.y"
861bb6c1
JL
5365{ yyval.ttype = do_scoped_id (yyvsp[0].ttype, 1); ;
5366 break;}
cf776105
JM
5367case 303:
5368#line 1565 "parse.y"
861bb6c1
JL
5369{
5370 got_scope = NULL_TREE;
5371 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
5372 yyval.ttype = do_scoped_id (yyvsp[0].ttype, 1);
5373 else
5374 yyval.ttype = yyvsp[0].ttype;
5375 ;
5376 break;}
cf776105
JM
5377case 304:
5378#line 1573 "parse.y"
861bb6c1
JL
5379{ yyval.ttype = build_offset_ref (OP0 (yyval.ttype), OP1 (yyval.ttype)); ;
5380 break;}
cf776105
JM
5381case 305:
5382#line 1575 "parse.y"
861bb6c1
JL
5383{ if (processing_template_decl)
5384 yyval.ttype = build_min_nt (CALL_EXPR, copy_to_permanent (yyvsp[-3].ttype), yyvsp[-1].ttype, NULL_TREE);
5385 else
5386 yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), yyvsp[-1].ttype); ;
5387 break;}
cf776105
JM
5388case 306:
5389#line 1580 "parse.y"
861bb6c1
JL
5390{ if (processing_template_decl)
5391 yyval.ttype = build_min_nt (CALL_EXPR, copy_to_permanent (yyvsp[-1].ttype),
5392 NULL_TREE, NULL_TREE);
5393 else
5394 yyval.ttype = build_member_call (OP0 (yyval.ttype), OP1 (yyval.ttype), NULL_TREE); ;
5395 break;}
cf776105
JM
5396case 307:
5397#line 1586 "parse.y"
386b8a85
JM
5398{
5399 yyval.ttype = build_x_component_ref (yyval.ttype, yyvsp[0].ttype, NULL_TREE, 1);
5400 ;
5401 break;}
cf776105
JM
5402case 308:
5403#line 1590 "parse.y"
386b8a85
JM
5404{
5405 yyval.ttype = build_method_call (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[-1].ttype,
5406 NULL_TREE, LOOKUP_NORMAL);
5407 ;
5408 break;}
cf776105
JM
5409case 309:
5410#line 1595 "parse.y"
386b8a85
JM
5411{
5412 yyval.ttype = build_method_call (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE,
5413 NULL_TREE, LOOKUP_NORMAL);
5414 ;
5415 break;}
cf776105
JM
5416case 310:
5417#line 1600 "parse.y"
861bb6c1
JL
5418{ yyval.ttype = build_x_component_ref (yyval.ttype, yyvsp[0].ttype, NULL_TREE, 1); ;
5419 break;}
cf776105
JM
5420case 311:
5421#line 1602 "parse.y"
861bb6c1
JL
5422{ if (processing_template_decl)
5423 yyval.ttype = build_min_nt (COMPONENT_REF, yyvsp[-1].ttype, copy_to_permanent (yyvsp[0].ttype));
5424 else
5425 yyval.ttype = build_object_ref (yyval.ttype, OP0 (yyvsp[0].ttype), OP1 (yyvsp[0].ttype)); ;
5426 break;}
cf776105
JM
5427case 312:
5428#line 1607 "parse.y"
861bb6c1
JL
5429{
5430#if 0
5431 /* This is a future direction of this code, but because
5432 build_x_function_call cannot always undo what is done
5433 in build_component_ref entirely yet, we cannot do this. */
5434 yyval.ttype = build_x_function_call (build_component_ref (yyval.ttype, yyvsp[-3].ttype, NULL_TREE, 1), yyvsp[-1].ttype, current_class_ref);
5435 if (TREE_CODE (yyval.ttype) == CALL_EXPR
5436 && TREE_TYPE (yyval.ttype) != void_type_node)
5437 yyval.ttype = require_complete_type (yyval.ttype);
5438#else
5439 yyval.ttype = build_method_call (yyval.ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE,
5440 LOOKUP_NORMAL);
5441#endif
5442 ;
5443 break;}
cf776105
JM
5444case 313:
5445#line 1622 "parse.y"
861bb6c1
JL
5446{
5447#if 0
5448 /* This is a future direction of this code, but because
5449 build_x_function_call cannot always undo what is done
5450 in build_component_ref entirely yet, we cannot do this. */
5451 yyval.ttype = build_x_function_call (build_component_ref (yyval.ttype, yyvsp[-1].ttype, NULL_TREE, 1), NULL_TREE, current_class_ref);
5452 if (TREE_CODE (yyval.ttype) == CALL_EXPR
5453 && TREE_TYPE (yyval.ttype) != void_type_node)
5454 yyval.ttype = require_complete_type (yyval.ttype);
5455#else
5456 yyval.ttype = build_method_call (yyval.ttype, yyvsp[-1].ttype, NULL_TREE, NULL_TREE,
5457 LOOKUP_NORMAL);
5458#endif
5459 ;
5460 break;}
cf776105
JM
5461case 314:
5462#line 1637 "parse.y"
861bb6c1
JL
5463{
5464 if (IS_SIGNATURE (OP0 (yyvsp[-3].ttype)))
5465 {
5466 warning ("signature name in scope resolution ignored");
5467 yyval.ttype = build_method_call (yyval.ttype, OP1 (yyvsp[-3].ttype), yyvsp[-1].ttype, NULL_TREE,
5468 LOOKUP_NORMAL);
5469 }
5470 else
5471 yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-3].ttype), OP1 (yyvsp[-3].ttype), yyvsp[-1].ttype);
5472 ;
5473 break;}
cf776105
JM
5474case 315:
5475#line 1648 "parse.y"
861bb6c1
JL
5476{
5477 if (IS_SIGNATURE (OP0 (yyvsp[-1].ttype)))
5478 {
5479 warning ("signature name in scope resolution ignored");
5480 yyval.ttype = build_method_call (yyval.ttype, OP1 (yyvsp[-1].ttype), NULL_TREE, NULL_TREE,
5481 LOOKUP_NORMAL);
5482 }
5483 else
5484 yyval.ttype = build_scoped_method_call (yyval.ttype, OP0 (yyvsp[-1].ttype), OP1 (yyvsp[-1].ttype), NULL_TREE);
5485 ;
5486 break;}
cf776105
JM
5487case 316:
5488#line 1660 "parse.y"
861bb6c1
JL
5489{
5490 if (IDENTIFIER_GLOBAL_VALUE (yyvsp[-1].ttype)
5491 && (TREE_CODE (TREE_TYPE (yyvsp[-3].ttype))
5492 != TREE_CODE (TREE_TYPE (IDENTIFIER_GLOBAL_VALUE (yyvsp[-1].ttype)))))
5493 cp_error ("`%E' is not of type `%T'", yyvsp[-3].ttype, yyvsp[-1].ttype);
5494 yyval.ttype = cp_convert (void_type_node, yyvsp[-3].ttype);
5495 ;
5496 break;}
cf776105
JM
5497case 317:
5498#line 1668 "parse.y"
861bb6c1
JL
5499{
5500 if (yyvsp[-4].ttype != yyvsp[-1].ttype)
5501 cp_error ("destructor specifier `%T::~%T()' must have matching names", yyvsp[-4].ttype, yyvsp[-1].ttype);
5502 if (TREE_CODE (TREE_TYPE (yyvsp[-5].ttype))
5503 != TREE_CODE (TREE_TYPE (IDENTIFIER_GLOBAL_VALUE (yyvsp[-4].ttype))))
5504 cp_error ("`%E' is not of type `%T'", yyvsp[-5].ttype, yyvsp[-4].ttype);
5505 yyval.ttype = cp_convert (void_type_node, yyvsp[-5].ttype);
5506 ;
5507 break;}
cf776105
JM
5508case 318:
5509#line 1677 "parse.y"
861bb6c1
JL
5510{
5511 yyval.ttype = error_mark_node;
5512 ;
5513 break;}
cf776105
JM
5514case 319:
5515#line 1722 "parse.y"
861bb6c1
JL
5516{ yyval.itype = 0; ;
5517 break;}
cf776105
JM
5518case 320:
5519#line 1724 "parse.y"
861bb6c1
JL
5520{ got_scope = NULL_TREE; yyval.itype = 1; ;
5521 break;}
cf776105
JM
5522case 321:
5523#line 1729 "parse.y"
861bb6c1
JL
5524{ yyval.itype = 0; ;
5525 break;}
cf776105
JM
5526case 322:
5527#line 1731 "parse.y"
861bb6c1
JL
5528{ got_scope = NULL_TREE; yyval.itype = 1; ;
5529 break;}
cf776105
JM
5530case 323:
5531#line 1736 "parse.y"
861bb6c1
JL
5532{ yyval.ttype = boolean_true_node; ;
5533 break;}
cf776105
JM
5534case 324:
5535#line 1738 "parse.y"
861bb6c1
JL
5536{ yyval.ttype = boolean_false_node; ;
5537 break;}
cf776105
JM
5538case 326:
5539#line 1745 "parse.y"
861bb6c1
JL
5540{ yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
5541 break;}
cf776105
JM
5542case 327:
5543#line 1750 "parse.y"
861bb6c1
JL
5544{
5545 if (! current_function_parms_stored)
5546 store_parm_decls ();
5547 setup_vtbl_ptr ();
5548 /* Always keep the BLOCK node associated with the outermost
5549 pair of curley braces of a function. These are needed
5550 for correct operation of dwarfout.c. */
5551 keep_next_level ();
5552 ;
5553 break;}
cf776105
JM
5554case 328:
5555#line 1763 "parse.y"
861bb6c1
JL
5556{ got_object = TREE_TYPE (yyval.ttype); ;
5557 break;}
cf776105
JM
5558case 329:
5559#line 1765 "parse.y"
861bb6c1
JL
5560{
5561 yyval.ttype = build_x_arrow (yyval.ttype);
5562 got_object = TREE_TYPE (yyval.ttype);
5563 ;
5564 break;}
cf776105
JM
5565case 330:
5566#line 1773 "parse.y"
861bb6c1
JL
5567{
5568 resume_momentary (yyvsp[-1].itype);
5569 if (yyvsp[-2].ftype.t && IS_AGGR_TYPE_CODE (TREE_CODE (yyvsp[-2].ftype.t)))
5570 note_got_semicolon (yyvsp[-2].ftype.t);
5571 ;
5572 break;}
cf776105
JM
5573case 331:
5574#line 1779 "parse.y"
861bb6c1
JL
5575{
5576 resume_momentary (yyvsp[-1].itype);
5577 note_list_got_semicolon (yyvsp[-2].ftype.t);
5578 ;
5579 break;}
cf776105
JM
5580case 332:
5581#line 1784 "parse.y"
861bb6c1
JL
5582{ resume_momentary (yyvsp[-1].itype); ;
5583 break;}
cf776105
JM
5584case 333:
5585#line 1786 "parse.y"
861bb6c1
JL
5586{
5587 shadow_tag (yyvsp[-1].ftype.t);
5588 note_list_got_semicolon (yyvsp[-1].ftype.t);
5589 ;
5590 break;}
cf776105
JM
5591case 334:
5592#line 1791 "parse.y"
861bb6c1
JL
5593{ warning ("empty declaration"); ;
5594 break;}
cf776105
JM
5595case 335:
5596#line 1793 "parse.y"
861bb6c1
JL
5597{ pedantic = yyvsp[-1].itype; ;
5598 break;}
cf776105
JM
5599case 338:
5600#line 1807 "parse.y"
861bb6c1
JL
5601{ yyval.ttype = make_call_declarator (NULL_TREE, empty_parms (),
5602 NULL_TREE, NULL_TREE); ;
5603 break;}
cf776105
JM
5604case 339:
5605#line 1810 "parse.y"
861bb6c1
JL
5606{ yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), NULL_TREE,
5607 NULL_TREE); ;
5608 break;}
cf776105
JM
5609case 340:
5610#line 1817 "parse.y"
861bb6c1
JL
5611{ yyval.ftype.t = build_decl_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
5612 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
5613 break;}
cf776105
JM
5614case 341:
5615#line 1820 "parse.y"
861bb6c1
JL
5616{ yyval.ftype.t = build_decl_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
5617 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
5618 break;}
cf776105
JM
5619case 342:
5620#line 1823 "parse.y"
861bb6c1
JL
5621{ yyval.ftype.t = build_decl_list (get_decl_list (yyvsp[-1].ftype.t), yyvsp[0].ttype);
5622 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
5623 break;}
cf776105
JM
5624case 343:
5625#line 1826 "parse.y"
861bb6c1
JL
5626{ yyval.ftype.t = build_decl_list (yyvsp[0].ftype.t, NULL_TREE);
5627 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
5628 break;}
cf776105
JM
5629case 344:
5630#line 1829 "parse.y"
861bb6c1
JL
5631{ yyval.ftype.t = build_decl_list (yyvsp[0].ftype.t, NULL_TREE);
5632 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
5633 break;}
cf776105
JM
5634case 347:
5635#line 1845 "parse.y"
861bb6c1
JL
5636{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyvsp[-1].ttype);
5637 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
5638 break;}
cf776105
JM
5639case 348:
5640#line 1848 "parse.y"
861bb6c1
JL
5641{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, yyvsp[0].ttype);
5642 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
5643 break;}
cf776105
JM
5644case 349:
5645#line 1851 "parse.y"
861bb6c1
JL
5646{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-2].ftype.t, chainon (yyvsp[-1].ttype, yyvsp[0].ttype));
5647 yyval.ftype.new_type_flag = yyvsp[-2].ftype.new_type_flag; ;
5648 break;}
cf776105
JM
5649case 350:
5650#line 1854 "parse.y"
861bb6c1
JL
5651{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, chainon (yyvsp[0].ttype, yyvsp[-2].ttype));
5652 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
5653 break;}
cf776105
JM
5654case 351:
5655#line 1857 "parse.y"
861bb6c1
JL
5656{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, chainon (yyvsp[0].ttype, yyvsp[-2].ttype));
5657 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
5658 break;}
cf776105
JM
5659case 352:
5660#line 1860 "parse.y"
861bb6c1
JL
5661{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-2].ftype.t,
5662 chainon (yyvsp[-1].ttype, chainon (yyvsp[0].ttype, yyvsp[-3].ttype)));
5663 yyval.ftype.new_type_flag = yyvsp[-2].ftype.new_type_flag; ;
5664 break;}
cf776105
JM
5665case 353:
5666#line 1867 "parse.y"
861bb6c1
JL
5667{ if (extra_warnings)
5668 warning ("`%s' is not at beginning of declaration",
5669 IDENTIFIER_POINTER (yyval.ttype));
5670 yyval.ttype = build_decl_list (NULL_TREE, yyval.ttype); ;
5671 break;}
cf776105
JM
5672case 354:
5673#line 1872 "parse.y"
861bb6c1
JL
5674{ yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyval.ttype); ;
5675 break;}
cf776105
JM
5676case 355:
5677#line 1874 "parse.y"
861bb6c1
JL
5678{ if (extra_warnings)
5679 warning ("`%s' is not at beginning of declaration",
5680 IDENTIFIER_POINTER (yyvsp[0].ttype));
5681 yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
5682 break;}
cf776105
JM
5683case 356:
5684#line 1879 "parse.y"
861bb6c1
JL
5685{ yyval.ttype = decl_tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ;
5686 break;}
cf776105
JM
5687case 357:
5688#line 1881 "parse.y"
861bb6c1
JL
5689{ yyval.ttype = decl_tree_cons (yyvsp[0].ttype, NULL_TREE, NULL_TREE); ;
5690 break;}
cf776105
JM
5691case 358:
5692#line 1891 "parse.y"
861bb6c1
JL
5693{ yyval.ttype = yyvsp[0].ftype.t; TREE_STATIC (yyval.ttype) = 1; ;
5694 break;}
cf776105
JM
5695case 359:
5696#line 1893 "parse.y"
861bb6c1
JL
5697{ yyval.ttype = IDENTIFIER_AS_LIST (yyval.ttype); ;
5698 break;}
cf776105
JM
5699case 360:
5700#line 1895 "parse.y"
861bb6c1
JL
5701{ yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
5702 TREE_STATIC (yyval.ttype) = 1; ;
5703 break;}
cf776105
JM
5704case 361:
5705#line 1898 "parse.y"
861bb6c1
JL
5706{ if (extra_warnings && TREE_STATIC (yyval.ttype))
5707 warning ("`%s' is not at beginning of declaration",
5708 IDENTIFIER_POINTER (yyvsp[0].ttype));
5709 yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype);
5710 TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;
5711 break;}
cf776105
JM
5712case 362:
5713#line 1904 "parse.y"
861bb6c1
JL
5714{ yyval.ttype = decl_tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ;
5715 break;}
cf776105
JM
5716case 363:
5717#line 1906 "parse.y"
861bb6c1
JL
5718{ yyval.ttype = decl_tree_cons (yyvsp[0].ttype, NULL_TREE, NULL_TREE); ;
5719 break;}
cf776105
JM
5720case 364:
5721#line 1917 "parse.y"
861bb6c1
JL
5722{ yyval.ftype.t = get_decl_list (yyvsp[0].ftype.t);
5723 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
5724 break;}
cf776105
JM
5725case 365:
5726#line 1920 "parse.y"
861bb6c1
JL
5727{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyvsp[-1].ftype.t);
5728 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
5729 break;}
cf776105
JM
5730case 366:
5731#line 1923 "parse.y"
861bb6c1
JL
5732{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, yyvsp[0].ttype);
5733 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
5734 break;}
cf776105
JM
5735case 367:
5736#line 1926 "parse.y"
861bb6c1
JL
5737{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[-1].ftype.t, chainon (yyvsp[0].ttype, yyvsp[-2].ftype.t));
5738 yyval.ftype.new_type_flag = yyvsp[-2].ftype.new_type_flag; ;
5739 break;}
cf776105
JM
5740case 368:
5741#line 1932 "parse.y"
861bb6c1
JL
5742{ yyval.ttype = build_decl_list (NULL_TREE, yyvsp[0].ftype.t); ;
5743 break;}
cf776105
JM
5744case 369:
5745#line 1934 "parse.y"
861bb6c1
JL
5746{ yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ftype.t, yyvsp[-1].ttype); ;
5747 break;}
cf776105
JM
5748case 371:
5749#line 1944 "parse.y"
a2676865
JM
5750{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; ;
5751 break;}
cf776105
JM
5752case 372:
5753#line 1946 "parse.y"
956d6950
JL
5754{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; ;
5755 break;}
cf776105
JM
5756case 373:
5757#line 1948 "parse.y"
861bb6c1
JL
5758{ yyval.ftype.t = TREE_TYPE (yyvsp[-1].ttype);
5759 yyval.ftype.new_type_flag = 0; ;
5760 break;}
cf776105
JM
5761case 374:
5762#line 1951 "parse.y"
861bb6c1
JL
5763{ yyval.ftype.t = groktypename (yyvsp[-1].ftype.t);
5764 yyval.ftype.new_type_flag = 0; ;
5765 break;}
cf776105
JM
5766case 375:
5767#line 1954 "parse.y"
861bb6c1
JL
5768{ tree type = TREE_TYPE (yyvsp[-1].ttype);
5769
5770 yyval.ftype.new_type_flag = 0;
5771 if (IS_AGGR_TYPE (type))
5772 {
5773 sorry ("sigof type specifier");
5774 yyval.ftype.t = type;
5775 }
5776 else
5777 {
5778 error ("`sigof' applied to non-aggregate expression");
5779 yyval.ftype.t = error_mark_node;
5780 }
5781 ;
5782 break;}
cf776105
JM
5783case 376:
5784#line 1969 "parse.y"
861bb6c1
JL
5785{ tree type = groktypename (yyvsp[-1].ftype.t);
5786
5787 yyval.ftype.new_type_flag = 0;
5788 if (IS_AGGR_TYPE (type))
5789 {
5790 sorry ("sigof type specifier");
5791 yyval.ftype.t = type;
5792 }
5793 else
5794 {
5795 error("`sigof' applied to non-aggregate type");
5796 yyval.ftype.t = error_mark_node;
5797 }
5798 ;
5799 break;}
cf776105
JM
5800case 377:
5801#line 1989 "parse.y"
861bb6c1
JL
5802{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; ;
5803 break;}
cf776105
JM
5804case 378:
5805#line 1991 "parse.y"
861bb6c1
JL
5806{ yyval.ftype.t = yyvsp[0].ttype; yyval.ftype.new_type_flag = 0; ;
5807 break;}
cf776105
JM
5808case 386:
5809#line 2012 "parse.y"
861bb6c1
JL
5810{ yyval.ttype = NULL_TREE; ;
5811 break;}
cf776105
JM
5812case 387:
5813#line 2014 "parse.y"
861bb6c1
JL
5814{ if (TREE_CHAIN (yyvsp[-1].ttype)) yyvsp[-1].ttype = combine_strings (yyvsp[-1].ttype); yyval.ttype = yyvsp[-1].ttype; ;
5815 break;}
cf776105
JM
5816case 388:
5817#line 2019 "parse.y"
861bb6c1
JL
5818{ split_specs_attrs (yyvsp[-4].ttype, &current_declspecs,
5819 &prefix_attributes);
5820 if (current_declspecs
5821 && TREE_CODE (current_declspecs) != TREE_LIST)
5822 current_declspecs = get_decl_list (current_declspecs);
5823 if (have_extern_spec && !used_extern_spec)
5824 {
5825 current_declspecs = decl_tree_cons
5826 (NULL_TREE, get_identifier ("extern"),
5827 current_declspecs);
5828 used_extern_spec = 1;
5829 }
5830 yyvsp[0].itype = suspend_momentary ();
5831 yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1);
5832 cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype, prefix_attributes); ;
5833 break;}
cf776105
JM
5834case 389:
5835#line 2036 "parse.y"
861bb6c1
JL
5836{ cp_finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 1, LOOKUP_ONLYCONVERTING);
5837 yyval.itype = yyvsp[-2].itype; ;
5838 break;}
cf776105
JM
5839case 390:
5840#line 2039 "parse.y"
861bb6c1
JL
5841{ tree d;
5842 split_specs_attrs (yyvsp[-3].ttype, &current_declspecs,
5843 &prefix_attributes);
5844 if (current_declspecs
5845 && TREE_CODE (current_declspecs) != TREE_LIST)
5846 current_declspecs = get_decl_list (current_declspecs);
5847 if (have_extern_spec && !used_extern_spec)
5848 {
5849 current_declspecs = decl_tree_cons
5850 (NULL_TREE, get_identifier ("extern"),
5851 current_declspecs);
5852 used_extern_spec = 1;
5853 }
5854 yyval.itype = suspend_momentary ();
5855 d = start_decl (yyvsp[-2].ttype, current_declspecs, 0);
5856 cplus_decl_attributes (d, yyvsp[0].ttype, prefix_attributes);
5857 cp_finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 1, 0); ;
5858 break;}
cf776105
JM
5859case 391:
5860#line 2060 "parse.y"
861bb6c1
JL
5861{ yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1);
5862 cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype, prefix_attributes); ;
5863 break;}
cf776105
JM
5864case 392:
5865#line 2064 "parse.y"
861bb6c1
JL
5866{ cp_finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 1, LOOKUP_ONLYCONVERTING); ;
5867 break;}
cf776105
JM
5868case 393:
5869#line 2066 "parse.y"
861bb6c1
JL
5870{ yyval.ttype = start_decl (yyvsp[-2].ttype, current_declspecs, 0);
5871 cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes);
5872 cp_finish_decl (yyval.ttype, NULL_TREE, yyvsp[-1].ttype, 1, 0); ;
5873 break;}
cf776105
JM
5874case 394:
5875#line 2073 "parse.y"
861bb6c1
JL
5876{ split_specs_attrs (yyvsp[-4].ttype, &current_declspecs,
5877 &prefix_attributes);
5878 yyvsp[0].itype = suspend_momentary ();
5879 yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1);
5880 cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype, prefix_attributes); ;
5881 break;}
cf776105
JM
5882case 395:
5883#line 2080 "parse.y"
861bb6c1
JL
5884{ cp_finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 1, LOOKUP_ONLYCONVERTING);
5885 yyval.itype = yyvsp[-2].itype; ;
5886 break;}
cf776105
JM
5887case 396:
5888#line 2083 "parse.y"
861bb6c1
JL
5889{ tree d;
5890 split_specs_attrs (yyvsp[-3].ttype, &current_declspecs,
5891 &prefix_attributes);
5892 yyval.itype = suspend_momentary ();
5893 d = start_decl (yyvsp[-2].ttype, current_declspecs, 0);
5894 cplus_decl_attributes (d, yyvsp[0].ttype, prefix_attributes);
5895 cp_finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 1, 0); ;
5896 break;}
cf776105
JM
5897case 397:
5898#line 2094 "parse.y"
861bb6c1
JL
5899{ current_declspecs = NULL_TREE;
5900 prefix_attributes = NULL_TREE;
5901 yyvsp[0].itype = suspend_momentary ();
5902 yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1);
5903 cplus_decl_attributes (yyval.ttype, yyvsp[-1].ttype, prefix_attributes); ;
5904 break;}
cf776105
JM
5905case 398:
5906#line 2101 "parse.y"
861bb6c1
JL
5907{ cp_finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype, 1, LOOKUP_ONLYCONVERTING);
5908 yyval.itype = yyvsp[-2].itype; ;
5909 break;}
cf776105
JM
5910case 399:
5911#line 2104 "parse.y"
861bb6c1
JL
5912{ tree d;
5913 current_declspecs = NULL_TREE;
5914 prefix_attributes = NULL_TREE;
5915 yyval.itype = suspend_momentary ();
5916 d = start_decl (yyvsp[-2].ttype, current_declspecs, 0);
5917 cplus_decl_attributes (d, yyvsp[0].ttype, prefix_attributes);
5918 cp_finish_decl (d, NULL_TREE, yyvsp[-1].ttype, 1, 0); ;
5919 break;}
cf776105
JM
5920case 400:
5921#line 2117 "parse.y"
956d6950 5922{ yyval.ttype = NULL_TREE; ;
861bb6c1 5923 break;}
cf776105
JM
5924case 401:
5925#line 2119 "parse.y"
a2676865 5926{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 5927 break;}
cf776105
JM
5928case 402:
5929#line 2124 "parse.y"
956d6950 5930{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 5931 break;}
cf776105
JM
5932case 403:
5933#line 2126 "parse.y"
956d6950 5934{ yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 5935 break;}
cf776105
JM
5936case 404:
5937#line 2131 "parse.y"
956d6950 5938{ yyval.ttype = yyvsp[-2].ttype; ;
861bb6c1 5939 break;}
cf776105
JM
5940case 405:
5941#line 2136 "parse.y"
956d6950 5942{ yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 5943 break;}
cf776105
JM
5944case 406:
5945#line 2138 "parse.y"
956d6950 5946{ yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ;
861bb6c1 5947 break;}
cf776105
JM
5948case 407:
5949#line 2143 "parse.y"
956d6950 5950{ yyval.ttype = NULL_TREE; ;
861bb6c1 5951 break;}
cf776105
JM
5952case 408:
5953#line 2145 "parse.y"
956d6950 5954{ yyval.ttype = build_tree_list (yyvsp[0].ttype, NULL_TREE); ;
861bb6c1 5955 break;}
cf776105
JM
5956case 409:
5957#line 2147 "parse.y"
956d6950 5958{ yyval.ttype = build_tree_list (yyvsp[-3].ttype, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ;
a2676865 5959 break;}
cf776105
JM
5960case 410:
5961#line 2149 "parse.y"
956d6950
JL
5962{ yyval.ttype = build_tree_list (yyvsp[-5].ttype, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ;
5963 break;}
cf776105
JM
5964case 411:
5965#line 2151 "parse.y"
861bb6c1
JL
5966{ yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
5967 break;}
cf776105
JM
5968case 416:
5969#line 2167 "parse.y"
861bb6c1
JL
5970{ yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
5971 break;}
cf776105
JM
5972case 417:
5973#line 2169 "parse.y"
861bb6c1
JL
5974{ yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
5975 break;}
cf776105
JM
5976case 418:
5977#line 2174 "parse.y"
861bb6c1
JL
5978{ yyval.ttype = NULL_TREE; ;
5979 break;}
cf776105
JM
5980case 419:
5981#line 2176 "parse.y"
861bb6c1
JL
5982{ yyval.ttype = yyvsp[0].ttype; ;
5983 break;}
cf776105
JM
5984case 421:
5985#line 2184 "parse.y"
861bb6c1
JL
5986{ yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, NULL_TREE);
5987 TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
5988 break;}
cf776105
JM
5989case 422:
5990#line 2187 "parse.y"
861bb6c1
JL
5991{ yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-1].ttype));
5992 TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
5993 break;}
cf776105
JM
5994case 423:
5995#line 2190 "parse.y"
861bb6c1
JL
5996{ yyval.ttype = build_nt (CONSTRUCTOR, NULL_TREE, nreverse (yyvsp[-2].ttype));
5997 TREE_HAS_CONSTRUCTOR (yyval.ttype) = 1; ;
5998 break;}
cf776105
JM
5999case 424:
6000#line 2193 "parse.y"
861bb6c1
JL
6001{ yyval.ttype = NULL_TREE; ;
6002 break;}
cf776105
JM
6003case 425:
6004#line 2200 "parse.y"
861bb6c1
JL
6005{ yyval.ttype = build_tree_list (NULL_TREE, yyval.ttype); ;
6006 break;}
cf776105
JM
6007case 426:
6008#line 2202 "parse.y"
1f479842 6009{ yyval.ttype = expr_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
861bb6c1 6010 break;}
cf776105
JM
6011case 427:
6012#line 2205 "parse.y"
1f479842 6013{ yyval.ttype = build_expr_list (yyvsp[-2].ttype, yyvsp[0].ttype); ;
861bb6c1 6014 break;}
cf776105
JM
6015case 428:
6016#line 2207 "parse.y"
1f479842 6017{ yyval.ttype = expr_tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
861bb6c1 6018 break;}
cf776105
JM
6019case 429:
6020#line 2209 "parse.y"
1f479842 6021{ yyval.ttype = build_expr_list (yyval.ttype, yyvsp[0].ttype); ;
861bb6c1 6022 break;}
cf776105
JM
6023case 430:
6024#line 2211 "parse.y"
1f479842 6025{ yyval.ttype = expr_tree_cons (yyvsp[-2].ttype, yyvsp[0].ttype, yyval.ttype); ;
861bb6c1 6026 break;}
cf776105
JM
6027case 431:
6028#line 2216 "parse.y"
861bb6c1
JL
6029{ start_function (NULL_TREE, TREE_VALUE (yyvsp[0].ttype),
6030 NULL_TREE, 1);
6031 reinit_parse_for_function (); ;
6032 break;}
cf776105
JM
6033case 432:
6034#line 2222 "parse.y"
861bb6c1
JL
6035{
6036 int nested = (hack_decl_function_context
6037 (current_function_decl) != NULL_TREE);
6038 finish_function (lineno, (int)yyvsp[-1].itype, nested);
6039 process_next_inline (yyvsp[-3].ttype);
6040 ;
6041 break;}
cf776105
JM
6042case 433:
6043#line 2229 "parse.y"
861bb6c1
JL
6044{ process_next_inline (yyvsp[-2].ttype); ;
6045 break;}
cf776105
JM
6046case 434:
6047#line 2231 "parse.y"
861bb6c1
JL
6048{ process_next_inline (yyvsp[-2].ttype); ;
6049 break;}
cf776105
JM
6050case 437:
6051#line 2243 "parse.y"
861bb6c1
JL
6052{ replace_defarg (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
6053 break;}
cf776105
JM
6054case 438:
6055#line 2245 "parse.y"
861bb6c1
JL
6056{ replace_defarg (yyvsp[-2].ttype, error_mark_node); ;
6057 break;}
cf776105
JM
6058case 440:
6059#line 2250 "parse.y"
a2676865
JM
6060{ do_pending_defargs (); ;
6061 break;}
cf776105
JM
6062case 441:
6063#line 2252 "parse.y"
956d6950
JL
6064{ do_pending_defargs (); ;
6065 break;}
cf776105
JM
6066case 442:
6067#line 2257 "parse.y"
861bb6c1
JL
6068{ yyvsp[0].itype = suspend_momentary ();
6069 yyval.ttype = start_enum (yyvsp[-1].ttype); ;
6070 break;}
cf776105
JM
6071case 443:
6072#line 2260 "parse.y"
861bb6c1
JL
6073{ yyval.ftype.t = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
6074 yyval.ftype.new_type_flag = 1;
6075 resume_momentary ((int) yyvsp[-4].itype);
6076 check_for_missing_semicolon (yyvsp[-3].ttype); ;
6077 break;}
cf776105
JM
6078case 444:
6079#line 2265 "parse.y"
861bb6c1
JL
6080{ yyval.ftype.t = finish_enum (start_enum (yyvsp[-2].ttype), NULL_TREE);
6081 yyval.ftype.new_type_flag = 1;
6082 check_for_missing_semicolon (yyval.ftype.t); ;
6083 break;}
cf776105
JM
6084case 445:
6085#line 2269 "parse.y"
861bb6c1
JL
6086{ yyvsp[0].itype = suspend_momentary ();
6087 yyval.ttype = start_enum (make_anon_name ()); ;
6088 break;}
cf776105
JM
6089case 446:
6090#line 2272 "parse.y"
861bb6c1
JL
6091{ yyval.ftype.t = finish_enum (yyvsp[-3].ttype, yyvsp[-2].ttype);
6092 resume_momentary ((int) yyvsp[-5].itype);
6093 check_for_missing_semicolon (yyvsp[-3].ttype);
6094 yyval.ftype.new_type_flag = 1; ;
6095 break;}
cf776105
JM
6096case 447:
6097#line 2277 "parse.y"
861bb6c1
JL
6098{ yyval.ftype.t = finish_enum (start_enum (make_anon_name()), NULL_TREE);
6099 yyval.ftype.new_type_flag = 1;
6100 check_for_missing_semicolon (yyval.ftype.t); ;
6101 break;}
cf776105
JM
6102case 448:
6103#line 2281 "parse.y"
861bb6c1
JL
6104{ yyval.ftype.t = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 1);
6105 yyval.ftype.new_type_flag = 0; ;
6106 break;}
cf776105
JM
6107case 449:
6108#line 2284 "parse.y"
a2676865 6109{ yyval.ftype.t = xref_tag (enum_type_node, yyvsp[0].ttype, NULL_TREE, 1);
861bb6c1
JL
6110 yyval.ftype.new_type_flag = 0; ;
6111 break;}
cf776105
JM
6112case 450:
6113#line 2287 "parse.y"
faf199a6 6114{ yyval.ftype.t = yyvsp[0].ttype;
861bb6c1
JL
6115 yyval.ftype.new_type_flag = 0; ;
6116 break;}
cf776105
JM
6117case 451:
6118#line 2292 "parse.y"
861bb6c1
JL
6119{
6120 int semi;
861bb6c1 6121
6a88a0c0 6122 yyval.ttype = yyvsp[-4].ttype;
861bb6c1
JL
6123#if 0
6124 /* Need to rework class nesting in the
6125 presence of nested classes, etc. */
6a88a0c0 6126 shadow_tag (CLASSTYPE_AS_LIST (yyvsp[-4].ttype)); */
861bb6c1
JL
6127#endif
6128 if (yychar == YYEMPTY)
6129 yychar = YYLEX;
6130 semi = yychar == ';';
6131 /* finish_struct nukes this anyway; if
6132 finish_exception does too, then it can go. */
6133 if (semi)
6a88a0c0 6134 note_got_semicolon (yyvsp[-4].ttype);
861bb6c1 6135
6a88a0c0 6136 if (TREE_CODE (yyvsp[-4].ttype) == ENUMERAL_TYPE)
861bb6c1
JL
6137 ;
6138 else
6139 {
6a88a0c0 6140 yyval.ttype = finish_struct (yyvsp[-4].ttype, yyvsp[-2].ttype, yyvsp[0].ttype, semi);
861bb6c1
JL
6141 if (semi) note_got_semicolon (yyval.ttype);
6142 }
6143
6144 pop_obstacks ();
6145
6146 if (! semi)
6a88a0c0 6147 check_for_missing_semicolon (yyvsp[-4].ttype);
861bb6c1 6148 if (current_scope () == current_function_decl)
8eeda2ec 6149 do_pending_defargs ();
861bb6c1
JL
6150 ;
6151 break;}
cf776105
JM
6152case 452:
6153#line 2325 "parse.y"
861bb6c1
JL
6154{
6155 if (pending_inlines
6156 && current_scope () == current_function_decl)
6157 do_pending_inlines ();
6158 ;
6159 break;}
cf776105
JM
6160case 453:
6161#line 2331 "parse.y"
861bb6c1
JL
6162{
6163 yyval.ftype.t = yyvsp[-3].ttype;
6164 yyval.ftype.new_type_flag = 1;
8eeda2ec 6165 if (current_class_type == NULL_TREE)
861bb6c1 6166 clear_inline_text_obstack ();
6a88a0c0
JM
6167
6168 /* Undo the begin_tree in left_curly. */
6169 end_tree ();
861bb6c1
JL
6170 ;
6171 break;}
cf776105
JM
6172case 454:
6173#line 2341 "parse.y"
861bb6c1 6174{
861bb6c1 6175 yyval.ftype.new_type_flag = 0;
abff8e06
JM
6176 if (TYPE_BINFO (yyvsp[0].ttype) == NULL_TREE)
6177 {
6178 cp_error ("%T is not a class type", yyvsp[0].ttype);
6179 yyval.ftype.t = error_mark_node;
6180 }
6181 else
6182 {
6183 yyval.ftype.t = yyvsp[0].ttype;
6184 /* struct B: public A; is not accepted by the WP grammar. */
6185 if (TYPE_BINFO_BASETYPES (yyval.ftype.t) && !TYPE_SIZE (yyval.ftype.t)
6186 && ! TYPE_BEING_DEFINED (yyval.ftype.t))
6187 cp_error ("base clause without member specification for `%#T'",
6188 yyval.ftype.t);
6189 }
861bb6c1
JL
6190 ;
6191 break;}
cf776105
JM
6192case 458:
6193#line 2368 "parse.y"
861bb6c1
JL
6194{ if (pedantic && !in_system_header)
6195 pedwarn ("comma at end of enumerator list"); ;
6196 break;}
cf776105
JM
6197case 460:
6198#line 2375 "parse.y"
956d6950 6199{ error ("storage class specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
861bb6c1 6200 break;}
cf776105
JM
6201case 461:
6202#line 2377 "parse.y"
956d6950 6203{ error ("type specifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
861bb6c1 6204 break;}
cf776105
JM
6205case 462:
6206#line 2379 "parse.y"
956d6950 6207{ error ("type qualifier `%s' not allowed after struct or class", IDENTIFIER_POINTER (yyvsp[0].ttype)); ;
861bb6c1 6208 break;}
cf776105
JM
6209case 463:
6210#line 2381 "parse.y"
956d6950 6211{ error ("no body nor ';' separates two class, struct or union declarations"); ;
861bb6c1 6212 break;}
cf776105
JM
6213case 464:
6214#line 2386 "parse.y"
a2676865
JM
6215{ current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
6216 break;}
cf776105
JM
6217case 465:
6218#line 2391 "parse.y"
956d6950
JL
6219{ current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
6220 break;}
cf776105
JM
6221case 466:
6222#line 2396 "parse.y"
861bb6c1
JL
6223{
6224 current_aggr = yyvsp[-2].ttype;
8eeda2ec 6225 yyval.ttype = handle_class_head (yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
861bb6c1
JL
6226 ;
6227 break;}
cf776105
JM
6228case 467:
6229#line 2401 "parse.y"
8eeda2ec
JM
6230{
6231 current_aggr = yyvsp[-3].ttype;
6232 yyval.ttype = handle_class_head (yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
6233 ;
861bb6c1 6234 break;}
cf776105
JM
6235case 468:
6236#line 2406 "parse.y"
8eeda2ec
JM
6237{
6238 current_aggr = yyvsp[-2].ttype;
6239 yyval.ttype = handle_class_head (yyvsp[-2].ttype, NULL_TREE, yyvsp[0].ttype);
6240 ;
861bb6c1 6241 break;}
cf776105
JM
6242case 469:
6243#line 2411 "parse.y"
a2676865 6244{ current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
8eeda2ec 6245 break;}
cf776105
JM
6246case 470:
6247#line 2413 "parse.y"
956d6950 6248{ current_aggr = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
8eeda2ec 6249 break;}
cf776105
JM
6250case 471:
6251#line 2418 "parse.y"
956d6950 6252{ yyval.ttype = xref_tag (current_aggr, yyvsp[0].ttype, NULL_TREE, 0); ;
a2676865 6253 break;}
cf776105
JM
6254case 472:
6255#line 2423 "parse.y"
956d6950
JL
6256{ yyval.ttype = xref_tag (current_aggr, yyvsp[0].ttype, NULL_TREE, 1); ;
6257 break;}
cf776105
JM
6258case 473:
6259#line 2426 "parse.y"
861bb6c1
JL
6260{
6261 yyval.ttype = yyvsp[-1].ttype;
6262 if (yyvsp[0].ttype)
6263 xref_basetypes (current_aggr, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
6264 ;
6265 break;}
cf776105
JM
6266case 474:
6267#line 2432 "parse.y"
861bb6c1
JL
6268{
6269 yyval.ttype = TREE_TYPE (yyvsp[-1].ttype);
6270 if (TREE_INT_CST_LOW (current_aggr) == union_type
6271 && TREE_CODE (yyval.ttype) != UNION_TYPE)
6272 cp_pedwarn ("`union' tag used in declaring `%#T'", yyval.ttype);
6273 else if (TREE_CODE (yyval.ttype) == UNION_TYPE
6274 && TREE_INT_CST_LOW (current_aggr) != union_type)
6275 cp_pedwarn ("non-`union' tag used in declaring `%#T'", yyval.ttype);
6276 if (yyvsp[0].ttype)
6277 {
6278 if (IS_AGGR_TYPE (yyval.ttype) && CLASSTYPE_USE_TEMPLATE (yyval.ttype))
6279 {
6280 if (CLASSTYPE_IMPLICIT_INSTANTIATION (yyval.ttype)
6281 && TYPE_SIZE (yyval.ttype) == NULL_TREE)
6282 {
6283 SET_CLASSTYPE_TEMPLATE_SPECIALIZATION (yyval.ttype);
6284 if (processing_template_decl)
6285 push_template_decl (TYPE_MAIN_DECL (yyval.ttype));
6286 }
6287 else if (CLASSTYPE_TEMPLATE_INSTANTIATION (yyval.ttype))
6288 cp_error ("specialization after instantiation of `%T'", yyval.ttype);
6289 }
6290 xref_basetypes (current_aggr, yyvsp[-1].ttype, yyval.ttype, yyvsp[0].ttype);
6291 }
6292 ;
6293 break;}
cf776105
JM
6294case 475:
6295#line 2461 "parse.y"
861bb6c1
JL
6296{ yyval.ttype = xref_tag (yyval.ttype, make_anon_name (), NULL_TREE, 0);
6297 yyungetc ('{', 1); ;
6298 break;}
cf776105
JM
6299case 478:
6300#line 2472 "parse.y"
861bb6c1
JL
6301{ yyval.ttype = NULL_TREE; ;
6302 break;}
cf776105
JM
6303case 479:
6304#line 2474 "parse.y"
861bb6c1
JL
6305{ yyungetc(':', 1); yyval.ttype = NULL_TREE; ;
6306 break;}
cf776105
JM
6307case 480:
6308#line 2476 "parse.y"
861bb6c1
JL
6309{ yyval.ttype = yyvsp[0].ttype; ;
6310 break;}
cf776105
JM
6311case 482:
6312#line 2482 "parse.y"
861bb6c1
JL
6313{ yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
6314 break;}
cf776105
JM
6315case 483:
6316#line 2487 "parse.y"
861bb6c1
JL
6317{
6318 tree type = TREE_TYPE (yyvsp[0].ttype);
6319 if (! is_aggr_type (type, 1))
6320 yyval.ttype = NULL_TREE;
6321 else if (current_aggr == signature_type_node
6322 && (! type) && (! IS_SIGNATURE (type)))
6323 {
6324 error ("class name not allowed as base signature");
6325 yyval.ttype = NULL_TREE;
6326 }
6327 else if (current_aggr == signature_type_node)
6328 {
6329 sorry ("signature inheritance, base type `%s' ignored",
6330 IDENTIFIER_POINTER (yyval.ttype));
6331 yyval.ttype = build_tree_list (access_public_node, type);
6332 }
6333 else if (type && IS_SIGNATURE (type))
6334 {
6335 error ("signature name not allowed as base class");
6336 yyval.ttype = NULL_TREE;
6337 }
6338 else
6339 yyval.ttype = build_tree_list (access_default_node, type);
6340 ;
6341 break;}
cf776105
JM
6342case 484:
6343#line 2512 "parse.y"
861bb6c1
JL
6344{
6345 tree type = TREE_TYPE (yyvsp[0].ttype);
6346 if (current_aggr == signature_type_node)
6347 error ("access and source specifiers not allowed in signature");
6348 if (! IS_AGGR_TYPE (type))
6349 yyval.ttype = NULL_TREE;
6350 else if (current_aggr == signature_type_node
6351 && (! type) && (! IS_SIGNATURE (type)))
6352 {
6353 error ("class name not allowed as base signature");
6354 yyval.ttype = NULL_TREE;
6355 }
6356 else if (current_aggr == signature_type_node)
6357 {
6358 sorry ("signature inheritance, base type `%s' ignored",
6359 IDENTIFIER_POINTER (yyval.ttype));
6360 yyval.ttype = build_tree_list (access_public_node, type);
6361 }
6362 else if (type && IS_SIGNATURE (type))
6363 {
6364 error ("signature name not allowed as base class");
6365 yyval.ttype = NULL_TREE;
6366 }
6367 else
6368 yyval.ttype = build_tree_list (yyval.ttype, type);
6369 ;
6370 break;}
cf776105
JM
6371case 485:
6372#line 2542 "parse.y"
faf199a6 6373{ yyval.ttype = TYPE_MAIN_DECL (yyvsp[0].ttype); ;
a2676865 6374 break;}
cf776105
JM
6375case 487:
6376#line 2545 "parse.y"
861bb6c1
JL
6377{
6378 if (current_aggr == signature_type_node)
6379 {
6380 if (IS_AGGR_TYPE (TREE_TYPE (yyvsp[-1].ttype)))
6381 {
6382 sorry ("`sigof' as base signature specifier");
6383 yyval.ttype = TREE_TYPE (yyvsp[-1].ttype);
6384 }
6385 else
6386 {
6387 error ("`sigof' applied to non-aggregate expression");
6388 yyval.ttype = error_mark_node;
6389 }
6390 }
6391 else
6392 {
6393 error ("`sigof' in struct or class declaration");
6394 yyval.ttype = error_mark_node;
6395 }
6396 ;
6397 break;}
cf776105
JM
6398case 488:
6399#line 2566 "parse.y"
861bb6c1
JL
6400{
6401 if (current_aggr == signature_type_node)
6402 {
6403 if (IS_AGGR_TYPE (groktypename (yyvsp[-1].ftype.t)))
6404 {
6405 sorry ("`sigof' as base signature specifier");
6406 yyval.ttype = groktypename (yyvsp[-1].ftype.t);
6407 }
6408 else
6409 {
6410 error ("`sigof' applied to non-aggregate expression");
6411 yyval.ttype = error_mark_node;
6412 }
6413 }
6414 else
6415 {
6416 error ("`sigof' in struct or class declaration");
6417 yyval.ttype = error_mark_node;
6418 }
6419 ;
6420 break;}
cf776105
JM
6421case 490:
6422#line 2591 "parse.y"
861bb6c1
JL
6423{ if (yyval.ttype != ridpointers[(int)RID_VIRTUAL])
6424 sorry ("non-virtual access");
6425 yyval.ttype = access_default_virtual_node; ;
6426 break;}
cf776105
JM
6427case 491:
6428#line 2595 "parse.y"
861bb6c1
JL
6429{ int err = 0;
6430 if (yyvsp[-1].ttype == access_protected_node)
6431 {
6432 warning ("`protected' access not implemented");
6433 yyvsp[-1].ttype = access_public_node;
6434 err++;
6435 }
6436 else if (yyvsp[-1].ttype == access_public_node)
6437 {
6438 if (yyvsp[-2].ttype == access_private_node)
6439 {
6440 mixed:
6441 error ("base class cannot be public and private");
6442 }
6443 else if (yyvsp[-2].ttype == access_default_virtual_node)
6444 yyval.ttype = access_public_virtual_node;
6445 }
6446 else /* $2 == access_private_node */
6447 {
6448 if (yyvsp[-2].ttype == access_public_node)
6449 goto mixed;
6450 else if (yyvsp[-2].ttype == access_default_virtual_node)
6451 yyval.ttype = access_private_virtual_node;
6452 }
6453 ;
6454 break;}
cf776105
JM
6455case 492:
6456#line 2621 "parse.y"
861bb6c1
JL
6457{ if (yyvsp[-1].ttype != ridpointers[(int)RID_VIRTUAL])
6458 sorry ("non-virtual access");
6459 if (yyval.ttype == access_public_node)
6460 yyval.ttype = access_public_virtual_node;
6461 else if (yyval.ttype == access_private_node)
6462 yyval.ttype = access_private_virtual_node; ;
6463 break;}
cf776105
JM
6464case 493:
6465#line 2631 "parse.y"
861bb6c1
JL
6466{ tree t = yyvsp[-1].ttype;
6467 push_obstacks_nochange ();
6468 end_temporary_allocation ();
6469
6470 if (t == error_mark_node
6471 || ! IS_AGGR_TYPE (t))
6472 {
6473 t = yyvsp[-1].ttype = make_lang_type (RECORD_TYPE);
6474 pushtag (make_anon_name (), t, 0);
6475 }
6476 if (TYPE_SIZE (t))
6477 duplicate_tag_error (t);
6478 if (TYPE_SIZE (t) || TYPE_BEING_DEFINED (t))
6479 {
6480 t = make_lang_type (TREE_CODE (t));
6481 pushtag (TYPE_IDENTIFIER (yyvsp[-1].ttype), t, 0);
6482 yyvsp[-1].ttype = t;
6483 }
6484 if (processing_template_decl && TYPE_CONTEXT (t)
6485 && ! current_class_type)
6486 push_template_decl (TYPE_STUB_DECL (t));
6487 pushclass (t, 0);
6488 TYPE_BEING_DEFINED (t) = 1;
6489 if (IS_AGGR_TYPE (t) && CLASSTYPE_USE_TEMPLATE (t))
6490 {
6491 if (CLASSTYPE_IMPLICIT_INSTANTIATION (t)
6492 && TYPE_SIZE (t) == NULL_TREE)
6493 {
6494 SET_CLASSTYPE_TEMPLATE_SPECIALIZATION (t);
6495 if (processing_template_decl)
6496 push_template_decl (TYPE_MAIN_DECL (t));
6497 }
6498 else if (CLASSTYPE_TEMPLATE_INSTANTIATION (t))
6499 cp_error ("specialization after instantiation of `%T'", t);
6500 }
6501 /* Reset the interface data, at the earliest possible
6502 moment, as it might have been set via a class foo;
6503 before. */
6504 /* Don't change signatures. */
6505 if (! IS_SIGNATURE (t))
6506 {
6507 extern tree pending_vtables;
6508 int needs_writing;
6509 tree name = TYPE_IDENTIFIER (t);
6510
6511 if (! ANON_AGGRNAME_P (name))
6512 {
6513 CLASSTYPE_INTERFACE_ONLY (t) = interface_only;
6514 SET_CLASSTYPE_INTERFACE_UNKNOWN_X
6515 (t, interface_unknown);
6516 }
6517
6518 /* Record how to set the access of this class's
6519 virtual functions. If write_virtuals == 2 or 3, then
6520 inline virtuals are ``extern inline''. */
6521 switch (write_virtuals)
6522 {
6523 case 0:
6524 case 1:
6525 needs_writing = 1;
6526 break;
6527 case 2:
6528 needs_writing = !! value_member (name, pending_vtables);
6529 break;
6530 case 3:
6531 needs_writing = ! CLASSTYPE_INTERFACE_ONLY (t)
6532 && CLASSTYPE_INTERFACE_KNOWN (t);
6533 break;
6534 default:
6535 needs_writing = 0;
6536 }
6537 CLASSTYPE_VTABLE_NEEDS_WRITING (t) = needs_writing;
6538 }
6539#if 0
6540 t = TYPE_IDENTIFIER (yyvsp[-1].ttype);
6541 if (t && IDENTIFIER_TEMPLATE (t))
6542 overload_template_name (t, 1);
6543#endif
6a88a0c0
JM
6544 reset_specialization();
6545
6546 /* In case this is a local class within a template
6547 function, we save the current tree structure so
6548 that we can get it back later. */
6549 begin_tree ();
861bb6c1
JL
6550 ;
6551 break;}
cf776105
JM
6552case 494:
6553#line 2720 "parse.y"
861bb6c1
JL
6554{
6555 yyval.ttype = build_self_reference ();
6556 ;
6557 break;}
cf776105
JM
6558case 495:
6559#line 2727 "parse.y"
861bb6c1
JL
6560{ if (yyval.ttype) yyval.ttype = build_tree_list (access_public_node, yyval.ttype); ;
6561 break;}
cf776105
JM
6562case 496:
6563#line 2729 "parse.y"
861bb6c1
JL
6564{
6565 if (current_aggr == signature_type_node)
6566 yyval.ttype = build_tree_list (access_public_node, yyvsp[0].ttype);
6567 else
6568 yyval.ttype = build_tree_list (access_default_node, yyvsp[0].ttype);
6569 if (yyvsp[-1].ttype) yyval.ttype = tree_cons (access_public_node, yyvsp[-1].ttype, yyval.ttype);
6570 ;
6571 break;}
cf776105
JM
6572case 497:
6573#line 2737 "parse.y"
861bb6c1
JL
6574{
6575 tree visspec = yyvsp[-2].ttype;
6576
6577 if (current_aggr == signature_type_node)
6578 {
6579 error ("access specifier not allowed in signature");
6580 visspec = access_public_node;
6581 }
6582 yyval.ttype = chainon (yyval.ttype, build_tree_list (visspec, yyvsp[0].ttype));
6583 ;
6584 break;}
cf776105
JM
6585case 498:
6586#line 2748 "parse.y"
861bb6c1
JL
6587{
6588 if (current_aggr == signature_type_node)
6589 error ("access specifier not allowed in signature");
6590 ;
6591 break;}
cf776105
JM
6592case 499:
6593#line 2758 "parse.y"
861bb6c1
JL
6594{ if (yyval.ttype == void_type_node) yyval.ttype = NULL_TREE;
6595 ;
6596 break;}
cf776105
JM
6597case 500:
6598#line 2761 "parse.y"
861bb6c1
JL
6599{ /* In pushdecl, we created a reverse list of names
6600 in this binding level. Make sure that the chain
6601 of what we're trying to add isn't the item itself
6602 (which can happen with what pushdecl's doing). */
6603 if (yyvsp[0].ttype != NULL_TREE && yyvsp[0].ttype != void_type_node)
6604 {
6605 if (TREE_CHAIN (yyvsp[0].ttype) != yyval.ttype)
6606 yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
6607 else
6608 yyval.ttype = yyvsp[0].ttype;
6609 }
6610 ;
6611 break;}
cf776105
JM
6612case 501:
6613#line 2777 "parse.y"
861bb6c1
JL
6614{ ;
6615 break;}
cf776105
JM
6616case 502:
6617#line 2779 "parse.y"
861bb6c1
JL
6618{ error ("missing ';' before right brace");
6619 yyungetc ('}', 0); ;
6620 break;}
cf776105
JM
6621case 503:
6622#line 2784 "parse.y"
861bb6c1
JL
6623{ yyval.ttype = finish_method (yyval.ttype); ;
6624 break;}
cf776105
JM
6625case 504:
6626#line 2786 "parse.y"
861bb6c1
JL
6627{ yyval.ttype = finish_method (yyval.ttype); ;
6628 break;}
cf776105
JM
6629case 505:
6630#line 2788 "parse.y"
a2676865 6631{ yyval.ttype = finish_method (yyval.ttype); ;
861bb6c1 6632 break;}
cf776105
JM
6633case 506:
6634#line 2790 "parse.y"
956d6950 6635{ yyval.ttype = finish_method (yyval.ttype); ;
a2676865 6636 break;}
cf776105
JM
6637case 507:
6638#line 2792 "parse.y"
956d6950
JL
6639{ yyval.ttype = NULL_TREE; ;
6640 break;}
cf776105
JM
6641case 508:
6642#line 2794 "parse.y"
861bb6c1
JL
6643{ yyval.ttype = yyvsp[0].ttype;
6644 pedantic = yyvsp[-1].itype; ;
6645 break;}
cf776105
JM
6646case 509:
6647#line 2803 "parse.y"
861bb6c1
JL
6648{ yyval.ttype = grok_x_components (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
6649 break;}
cf776105
JM
6650case 510:
6651#line 2805 "parse.y"
861bb6c1
JL
6652{ yyval.ttype = grok_x_components (yyvsp[-1].ttype, yyvsp[0].ttype); ;
6653 break;}
cf776105
JM
6654case 511:
6655#line 2807 "parse.y"
861bb6c1
JL
6656{ yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype,
6657 build_tree_list (yyvsp[-1].ttype, NULL_TREE)); ;
6658 break;}
cf776105
JM
6659case 512:
6660#line 2810 "parse.y"
861bb6c1
JL
6661{ yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype,
6662 build_tree_list (yyvsp[-1].ttype, NULL_TREE)); ;
6663 break;}
cf776105
JM
6664case 513:
6665#line 2813 "parse.y"
861bb6c1
JL
6666{ yyval.ttype = grokbitfield (NULL_TREE, NULL_TREE, yyvsp[0].ttype); ;
6667 break;}
cf776105
JM
6668case 514:
6669#line 2815 "parse.y"
861bb6c1
JL
6670{ yyval.ttype = NULL_TREE; ;
6671 break;}
cf776105
JM
6672case 515:
6673#line 2826 "parse.y"
861bb6c1
JL
6674{ tree specs, attrs;
6675 split_specs_attrs (yyvsp[-4].ttype, &specs, &attrs);
6676 yyval.ttype = grokfield (yyvsp[-3].ttype, specs, yyvsp[0].ttype, yyvsp[-2].ttype,
6677 build_tree_list (yyvsp[-1].ttype, attrs)); ;
6678 break;}
cf776105
JM
6679case 516:
6680#line 2831 "parse.y"
861bb6c1
JL
6681{ yyval.ttype = grokfield (yyval.ttype, NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype,
6682 build_tree_list (yyvsp[-1].ttype, NULL_TREE)); ;
6683 break;}
cf776105
JM
6684case 517:
6685#line 2834 "parse.y"
861bb6c1
JL
6686{ yyval.ttype = do_class_using_decl (yyvsp[0].ttype); ;
6687 break;}
cf776105
JM
6688case 518:
6689#line 2836 "parse.y"
6a88a0c0 6690{ yyval.ttype = finish_member_template_decl (yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 6691 break;}
cf776105
JM
6692case 519:
6693#line 2842 "parse.y"
a2676865
JM
6694{ yyval.ttype = NULL_TREE; ;
6695 break;}
cf776105
JM
6696case 521:
6697#line 2845 "parse.y"
861bb6c1
JL
6698{
6699 /* In this context, void_type_node encodes
6700 friends. They have been recorded elsewhere. */
6701 if (yyval.ttype == void_type_node)
6702 yyval.ttype = yyvsp[0].ttype;
6703 else
6704 yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
6705 ;
6706 break;}
cf776105
JM
6707case 522:
6708#line 2857 "parse.y"
861bb6c1
JL
6709{ yyval.ttype = NULL_TREE; ;
6710 break;}
cf776105
JM
6711case 524:
6712#line 2860 "parse.y"
861bb6c1
JL
6713{
6714 /* In this context, void_type_node encodes
6715 friends. They have been recorded elsewhere. */
6716 if (yyval.ttype == void_type_node)
6717 yyval.ttype = yyvsp[0].ttype;
6718 else
6719 yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype);
6720 ;
6721 break;}
cf776105
JM
6722case 529:
6723#line 2882 "parse.y"
861bb6c1
JL
6724{ split_specs_attrs (yyvsp[-4].ttype, &current_declspecs,
6725 &prefix_attributes);
6726 yyvsp[-4].ttype = current_declspecs;
6727 yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[0].ttype, yyvsp[-2].ttype,
6728 build_tree_list (yyvsp[-1].ttype, prefix_attributes)); ;
6729 break;}
cf776105
JM
6730case 530:
6731#line 2888 "parse.y"
861bb6c1
JL
6732{ split_specs_attrs (yyvsp[-4].ttype, &current_declspecs,
6733 &prefix_attributes);
6734 yyvsp[-4].ttype = current_declspecs;
6735 yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
6736 cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
6737 break;}
cf776105
JM
6738case 531:
6739#line 2897 "parse.y"
861bb6c1
JL
6740{ split_specs_attrs (yyvsp[-4].ttype, &current_declspecs,
6741 &prefix_attributes);
6742 yyvsp[-4].ttype = current_declspecs;
6743 yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[0].ttype, yyvsp[-2].ttype,
6744 build_tree_list (yyvsp[-1].ttype, prefix_attributes)); ;
6745 break;}
cf776105
JM
6746case 532:
6747#line 2903 "parse.y"
861bb6c1
JL
6748{ split_specs_attrs (yyvsp[-4].ttype, &current_declspecs,
6749 &prefix_attributes);
6750 yyvsp[-4].ttype = current_declspecs;
6751 yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[0].ttype, yyvsp[-2].ttype,
6752 build_tree_list (yyvsp[-1].ttype, prefix_attributes)); ;
6753 break;}
cf776105
JM
6754case 533:
6755#line 2909 "parse.y"
861bb6c1
JL
6756{ split_specs_attrs (yyvsp[-4].ttype, &current_declspecs,
6757 &prefix_attributes);
6758 yyvsp[-4].ttype = current_declspecs;
6759 yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
6760 cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
6761 break;}
cf776105
JM
6762case 534:
6763#line 2915 "parse.y"
861bb6c1
JL
6764{ split_specs_attrs (yyvsp[-3].ttype, &current_declspecs,
6765 &prefix_attributes);
6766 yyvsp[-3].ttype = current_declspecs;
6767 yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
6768 cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
6769 break;}
cf776105
JM
6770case 535:
6771#line 2924 "parse.y"
861bb6c1
JL
6772{ yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[0].ttype, yyvsp[-2].ttype,
6773 build_tree_list (yyvsp[-1].ttype, prefix_attributes)); ;
6774 break;}
cf776105
JM
6775case 536:
6776#line 2927 "parse.y"
861bb6c1
JL
6777{ yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
6778 cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
6779 break;}
cf776105
JM
6780case 537:
6781#line 2933 "parse.y"
861bb6c1
JL
6782{ yyval.ttype = grokfield (yyval.ttype, current_declspecs, yyvsp[0].ttype, yyvsp[-2].ttype,
6783 build_tree_list (yyvsp[-1].ttype, prefix_attributes)); ;
6784 break;}
cf776105
JM
6785case 538:
6786#line 2936 "parse.y"
861bb6c1
JL
6787{ yyval.ttype = grokbitfield (yyval.ttype, current_declspecs, yyvsp[-1].ttype);
6788 cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
6789 break;}
cf776105
JM
6790case 539:
6791#line 2939 "parse.y"
861bb6c1
JL
6792{ yyval.ttype = grokbitfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype);
6793 cplus_decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
6794 break;}
cf776105
JM
6795case 541:
6796#line 2950 "parse.y"
861bb6c1
JL
6797{ TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype; yyval.ttype = yyvsp[0].ttype; ;
6798 break;}
cf776105
JM
6799case 542:
6800#line 2955 "parse.y"
861bb6c1
JL
6801{ yyval.ttype = build_enumerator (yyval.ttype, NULL_TREE); ;
6802 break;}
cf776105
JM
6803case 543:
6804#line 2957 "parse.y"
861bb6c1
JL
6805{ yyval.ttype = build_enumerator (yyval.ttype, yyvsp[0].ttype); ;
6806 break;}
cf776105
JM
6807case 544:
6808#line 2963 "parse.y"
861bb6c1
JL
6809{ yyval.ftype.t = build_decl_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
6810 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6811 break;}
cf776105
JM
6812case 545:
6813#line 2966 "parse.y"
861bb6c1
JL
6814{ yyval.ftype.t = build_decl_list (yyvsp[0].ftype.t, NULL_TREE);
6815 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
6816 break;}
cf776105
JM
6817case 546:
6818#line 2971 "parse.y"
861bb6c1
JL
6819{
6820 if (pedantic)
6821 pedwarn ("ANSI C++ forbids array dimensions with parenthesized type in new");
6822 yyval.ftype.t = build_parse_node (ARRAY_REF, TREE_VALUE (yyvsp[-4].ftype.t), yyvsp[-1].ttype);
6823 yyval.ftype.t = build_decl_list (TREE_PURPOSE (yyvsp[-4].ftype.t), yyval.ftype.t);
6824 yyval.ftype.new_type_flag = yyvsp[-4].ftype.new_type_flag;
6825 ;
6826 break;}
cf776105
JM
6827case 547:
6828#line 2982 "parse.y"
861bb6c1
JL
6829{ yyval.ttype = NULL_TREE; ;
6830 break;}
cf776105
JM
6831case 548:
6832#line 2984 "parse.y"
861bb6c1
JL
6833{ yyval.ttype = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
6834 break;}
cf776105
JM
6835case 549:
6836#line 2989 "parse.y"
861bb6c1
JL
6837{ yyval.ftype.t = IDENTIFIER_AS_LIST (yyvsp[0].ttype);
6838 yyval.ftype.new_type_flag = 0; ;
6839 break;}
cf776105
JM
6840case 550:
6841#line 2992 "parse.y"
861bb6c1
JL
6842{ yyval.ftype.t = decl_tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ftype.t);
6843 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
6844 break;}
cf776105
JM
6845case 551:
6846#line 3001 "parse.y"
956d6950 6847{ yyval.itype = suspend_momentary (); ;
861bb6c1 6848 break;}
cf776105
JM
6849case 552:
6850#line 3006 "parse.y"
956d6950 6851{ resume_momentary ((int) yyvsp[-1].itype); yyval.ttype = yyvsp[0].ttype; ;
861bb6c1 6852 break;}
cf776105
JM
6853case 553:
6854#line 3012 "parse.y"
861bb6c1
JL
6855{ resume_momentary ((int) yyvsp[-3].itype); yyval.ttype = yyvsp[-1].ttype; ;
6856 break;}
cf776105
JM
6857case 554:
6858#line 3014 "parse.y"
956d6950 6859{ resume_momentary ((int) yyvsp[-3].itype); yyval.ttype = yyvsp[-1].ttype; ;
861bb6c1 6860 break;}
cf776105
JM
6861case 555:
6862#line 3016 "parse.y"
956d6950 6863{ resume_momentary ((int) yyvsp[-1].itype); yyval.ttype = empty_parms (); ;
faf199a6 6864 break;}
cf776105
JM
6865case 556:
6866#line 3018 "parse.y"
956d6950 6867{ resume_momentary ((int) yyvsp[-3].itype); yyval.ttype = NULL_TREE; ;
861bb6c1 6868 break;}
cf776105
JM
6869case 557:
6870#line 3025 "parse.y"
956d6950 6871{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
861bb6c1 6872 break;}
cf776105
JM
6873case 558:
6874#line 3027 "parse.y"
956d6950 6875{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
861bb6c1 6876 break;}
cf776105
JM
6877case 559:
6878#line 3029 "parse.y"
956d6950 6879{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
861bb6c1 6880 break;}
cf776105
JM
6881case 560:
6882#line 3031 "parse.y"
956d6950
JL
6883{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
6884 break;}
cf776105
JM
6885case 561:
6886#line 3033 "parse.y"
861bb6c1
JL
6887{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
6888 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
6889 ;
6890 break;}
cf776105
JM
6891case 563:
6892#line 3041 "parse.y"
861bb6c1
JL
6893{
6894 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
6895 {
3cd08147 6896 yyval.ttype = lookup_name (yyvsp[0].ttype, 1);
861bb6c1
JL
6897 if (current_class_type
6898 && TYPE_BEING_DEFINED (current_class_type)
6899 && ! IDENTIFIER_CLASS_VALUE (yyvsp[0].ttype))
6900 {
861bb6c1
JL
6901 /* Remember that this name has been used in the class
6902 definition, as per [class.scope0] */
6903 pushdecl_class_level (yyval.ttype);
6904 }
861bb6c1
JL
6905 }
6906 else
6907 yyval.ttype = yyvsp[0].ttype;
6908 ;
6909 break;}
cf776105
JM
6910case 564:
6911#line 3058 "parse.y"
861bb6c1
JL
6912{
6913 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
3cd08147 6914 yyval.ttype = IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype);
861bb6c1
JL
6915 else
6916 yyval.ttype = yyvsp[0].ttype;
6917 got_scope = NULL_TREE;
6918 ;
6919 break;}
cf776105
JM
6920case 567:
6921#line 3071 "parse.y"
861bb6c1
JL
6922{ yyval.ttype = yyvsp[0].ttype; ;
6923 break;}
cf776105
JM
6924case 568:
6925#line 3076 "parse.y"
861bb6c1
JL
6926{ yyval.ttype = get_type_decl (yyvsp[0].ttype); ;
6927 break;}
cf776105
JM
6928case 569:
6929#line 3081 "parse.y"
861bb6c1
JL
6930{ yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
6931 break;}
cf776105
JM
6932case 570:
6933#line 3083 "parse.y"
861bb6c1
JL
6934{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
6935 break;}
cf776105
JM
6936case 571:
6937#line 3085 "parse.y"
861bb6c1
JL
6938{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
6939 break;}
cf776105
JM
6940case 572:
6941#line 3087 "parse.y"
861bb6c1
JL
6942{ yyval.ttype = yyvsp[-1].ttype; ;
6943 break;}
cf776105
JM
6944case 573:
6945#line 3089 "parse.y"
861bb6c1
JL
6946{ push_nested_class (yyvsp[-1].ttype, 3);
6947 yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype);
6948 TREE_COMPLEXITY (yyval.ttype) = current_class_depth; ;
6949 break;}
cf776105
JM
6950case 575:
6951#line 3100 "parse.y"
861bb6c1
JL
6952{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
6953 break;}
cf776105
JM
6954case 576:
6955#line 3102 "parse.y"
861bb6c1
JL
6956{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
6957 break;}
cf776105
JM
6958case 577:
6959#line 3104 "parse.y"
861bb6c1
JL
6960{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
6961 break;}
cf776105
JM
6962case 578:
6963#line 3106 "parse.y"
861bb6c1
JL
6964{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
6965 break;}
cf776105
JM
6966case 579:
6967#line 3108 "parse.y"
861bb6c1
JL
6968{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
6969 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
6970 ;
6971 break;}
cf776105
JM
6972case 581:
6973#line 3116 "parse.y"
861bb6c1
JL
6974{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
6975 break;}
cf776105
JM
6976case 582:
6977#line 3118 "parse.y"
861bb6c1
JL
6978{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
6979 break;}
cf776105
JM
6980case 583:
6981#line 3120 "parse.y"
861bb6c1
JL
6982{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
6983 break;}
cf776105
JM
6984case 584:
6985#line 3122 "parse.y"
861bb6c1
JL
6986{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
6987 break;}
cf776105
JM
6988case 585:
6989#line 3124 "parse.y"
861bb6c1
JL
6990{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
6991 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
6992 ;
6993 break;}
cf776105
JM
6994case 587:
6995#line 3132 "parse.y"
861bb6c1
JL
6996{ yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
6997 break;}
cf776105
JM
6998case 588:
6999#line 3134 "parse.y"
861bb6c1
JL
7000{ yyval.ttype = yyvsp[-1].ttype; ;
7001 break;}
cf776105
JM
7002case 589:
7003#line 3136 "parse.y"
861bb6c1
JL
7004{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
7005 break;}
cf776105
JM
7006case 590:
7007#line 3138 "parse.y"
861bb6c1
JL
7008{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
7009 break;}
cf776105
JM
7010case 591:
7011#line 3140 "parse.y"
861bb6c1
JL
7012{ if (OP0 (yyval.ttype) != current_class_type)
7013 {
7014 push_nested_class (OP0 (yyval.ttype), 3);
7015 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
7016 }
7017 ;
7018 break;}
cf776105
JM
7019case 592:
7020#line 3147 "parse.y"
386b8a85
JM
7021{ got_scope = NULL_TREE;
7022 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype);
7023 if (yyvsp[-1].ttype != current_class_type)
7024 {
7025 push_nested_class (yyvsp[-1].ttype, 3);
7026 TREE_COMPLEXITY (yyval.ttype) = current_class_depth;
7027 }
7028 ;
7029 break;}
cf776105
JM
7030case 593:
7031#line 3159 "parse.y"
861bb6c1
JL
7032{ got_scope = NULL_TREE;
7033 yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
7034 break;}
cf776105
JM
7035case 594:
7036#line 3162 "parse.y"
386b8a85
JM
7037{ got_scope = NULL_TREE;
7038 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype); ;
7039 break;}
cf776105
JM
7040case 595:
7041#line 3168 "parse.y"
861bb6c1
JL
7042{ got_scope = NULL_TREE;
7043 yyval.ttype = build_parse_node (SCOPE_REF, yyval.ttype, yyvsp[0].ttype); ;
7044 break;}
cf776105
JM
7045case 596:
7046#line 3171 "parse.y"
386b8a85
JM
7047{ got_scope = NULL_TREE;
7048 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, yyvsp[0].ttype); ;
7049 break;}
cf776105
JM
7050case 598:
7051#line 3178 "parse.y"
861bb6c1
JL
7052{ yyval.ttype = yyvsp[0].ttype; ;
7053 break;}
cf776105
JM
7054case 599:
7055#line 3183 "parse.y"
861bb6c1
JL
7056{ yyval.ttype = build_functional_cast (yyvsp[-3].ftype.t, yyvsp[-1].ttype); ;
7057 break;}
cf776105
JM
7058case 600:
7059#line 3185 "parse.y"
861bb6c1
JL
7060{ yyval.ttype = reparse_decl_as_expr (yyvsp[-3].ftype.t, yyvsp[-1].ttype); ;
7061 break;}
cf776105
JM
7062case 601:
7063#line 3187 "parse.y"
861bb6c1
JL
7064{ yyval.ttype = reparse_absdcl_as_expr (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
7065 break;}
cf776105
JM
7066case 606:
7067#line 3199 "parse.y"
861bb6c1
JL
7068{ yyval.ttype = yyvsp[0].ttype; ;
7069 break;}
cf776105
JM
7070case 607:
7071#line 3206 "parse.y"
861bb6c1
JL
7072{
7073 if (TREE_CODE (yyvsp[-1].ttype) == IDENTIFIER_NODE)
7074 {
7075 yyval.ttype = lastiddecl;
7076 /* Remember that this name has been used in the class
7077 definition, as per [class.scope0] */
7078 if (current_class_type
7079 && TYPE_BEING_DEFINED (current_class_type)
7080 && ! IDENTIFIER_CLASS_VALUE (yyvsp[-1].ttype))
7081 pushdecl_class_level (yyval.ttype);
7082 }
7083 got_scope = yyval.ttype = TREE_TYPE (yyval.ttype);
7084 ;
7085 break;}
cf776105
JM
7086case 608:
7087#line 3220 "parse.y"
861bb6c1
JL
7088{
7089 if (TREE_CODE (yyvsp[-1].ttype) == IDENTIFIER_NODE)
7090 yyval.ttype = lastiddecl;
7091 got_scope = yyval.ttype = TREE_TYPE (yyval.ttype);
7092 ;
7093 break;}
cf776105
JM
7094case 609:
7095#line 3226 "parse.y"
861bb6c1
JL
7096{
7097 if (TREE_CODE (yyval.ttype) == IDENTIFIER_NODE)
7098 yyval.ttype = lastiddecl;
faf199a6 7099 got_scope = yyval.ttype;
861bb6c1
JL
7100 ;
7101 break;}
cf776105
JM
7102case 610:
7103#line 3232 "parse.y"
861bb6c1
JL
7104{ got_scope = yyval.ttype = complete_type (TREE_TYPE (yyvsp[-1].ttype)); ;
7105 break;}
cf776105
JM
7106case 612:
7107#line 3248 "parse.y"
faf199a6
JM
7108{ yyval.ttype = yyvsp[0].ttype; ;
7109 break;}
cf776105
JM
7110case 613:
7111#line 3253 "parse.y"
faf199a6
JM
7112{
7113 if (TREE_CODE_CLASS (TREE_CODE (yyvsp[-1].ttype)) == 't')
7114 yyval.ttype = make_typename_type (yyvsp[-1].ttype, yyvsp[0].ttype);
7115 else if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
7116 cp_error ("`%T' is not a class or namespace", yyvsp[0].ttype);
7117 else
d3959d60
JM
7118 {
7119 yyval.ttype = yyvsp[0].ttype;
7120 if (TREE_CODE (yyval.ttype) == TYPE_DECL)
7121 yyval.ttype = TREE_TYPE (yyval.ttype);
7122 }
faf199a6
JM
7123 ;
7124 break;}
cf776105
JM
7125case 614:
7126#line 3269 "parse.y"
faf199a6
JM
7127{
7128 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
7129 cp_error ("`%T' is not a class or namespace", yyvsp[0].ttype);
7130 ;
7131 break;}
cf776105
JM
7132case 615:
7133#line 3274 "parse.y"
faf199a6
JM
7134{
7135 if (TREE_CODE_CLASS (TREE_CODE (yyvsp[-1].ttype)) == 't')
7136 yyval.ttype = make_typename_type (yyvsp[-1].ttype, yyvsp[0].ttype);
7137 else if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
7138 cp_error ("`%T' is not a class or namespace", yyvsp[0].ttype);
7139 else
d3959d60
JM
7140 {
7141 yyval.ttype = yyvsp[0].ttype;
7142 if (TREE_CODE (yyval.ttype) == TYPE_DECL)
7143 yyval.ttype = TREE_TYPE (yyval.ttype);
7144 }
faf199a6
JM
7145 ;
7146 break;}
cf776105
JM
7147case 616:
7148#line 3290 "parse.y"
faf199a6
JM
7149{
7150 if (TREE_CODE (yyvsp[-1].ttype) != IDENTIFIER_NODE)
8857f91e
MM
7151 yyvsp[-1].ttype = lastiddecl;
7152
7153 got_scope = yyval.ttype = complete_type (TREE_TYPE (yyvsp[-1].ttype));
7154
7155 if (yyval.ttype == error_mark_node)
7156 cp_error ("`%T' is not a class or namespace", yyvsp[-1].ttype);
faf199a6
JM
7157 ;
7158 break;}
cf776105
JM
7159case 617:
7160#line 3300 "parse.y"
faf199a6
JM
7161{
7162 if (TREE_CODE (yyvsp[-1].ttype) != IDENTIFIER_NODE)
7163 yyval.ttype = lastiddecl;
7164 got_scope = yyval.ttype = complete_type (TREE_TYPE (yyval.ttype));
7165 ;
7166 break;}
cf776105
JM
7167case 618:
7168#line 3306 "parse.y"
faf199a6
JM
7169{ got_scope = yyval.ttype = complete_type (TREE_TYPE (yyval.ttype)); ;
7170 break;}
cf776105
JM
7171case 621:
7172#line 3310 "parse.y"
faf199a6
JM
7173{
7174 if (TREE_CODE (yyval.ttype) == IDENTIFIER_NODE)
7175 yyval.ttype = lastiddecl;
7176 got_scope = yyval.ttype;
7177 ;
7178 break;}
cf776105
JM
7179case 622:
7180#line 3319 "parse.y"
861bb6c1
JL
7181{
7182 if (TREE_CODE (yyvsp[0].ttype) == IDENTIFIER_NODE)
3cd08147 7183 yyval.ttype = IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype);
861bb6c1
JL
7184 else
7185 yyval.ttype = yyvsp[0].ttype;
7186 got_scope = NULL_TREE;
7187 ;
7188 break;}
cf776105
JM
7189case 624:
7190#line 3328 "parse.y"
861bb6c1
JL
7191{ yyval.ttype = yyvsp[0].ttype; ;
7192 break;}
cf776105
JM
7193case 625:
7194#line 3333 "parse.y"
861bb6c1
JL
7195{ got_scope = NULL_TREE; ;
7196 break;}
cf776105
JM
7197case 626:
7198#line 3335 "parse.y"
861bb6c1
JL
7199{ yyval.ttype = yyvsp[-1].ttype; got_scope = NULL_TREE; ;
7200 break;}
cf776105
JM
7201case 627:
7202#line 3342 "parse.y"
861bb6c1
JL
7203{ got_scope = void_type_node; ;
7204 break;}
cf776105
JM
7205case 628:
7206#line 3348 "parse.y"
861bb6c1
JL
7207{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
7208 break;}
cf776105
JM
7209case 629:
7210#line 3350 "parse.y"
861bb6c1
JL
7211{ yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
7212 break;}
cf776105
JM
7213case 630:
7214#line 3352 "parse.y"
861bb6c1
JL
7215{ yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
7216 break;}
cf776105
JM
7217case 631:
7218#line 3354 "parse.y"
861bb6c1
JL
7219{ yyval.ttype = make_reference_declarator (yyvsp[0].ttype, NULL_TREE); ;
7220 break;}
cf776105
JM
7221case 632:
7222#line 3356 "parse.y"
861bb6c1
JL
7223{ tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
7224 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
7225 ;
7226 break;}
cf776105
JM
7227case 633:
7228#line 3360 "parse.y"
861bb6c1
JL
7229{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
7230 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
7231 ;
7232 break;}
cf776105
JM
7233case 635:
7234#line 3369 "parse.y"
861bb6c1
JL
7235{ yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
7236 break;}
cf776105
JM
7237case 636:
7238#line 3371 "parse.y"
861bb6c1
JL
7239{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
7240 break;}
cf776105
JM
7241case 637:
7242#line 3377 "parse.y"
861bb6c1
JL
7243{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
7244 break;}
cf776105
JM
7245case 638:
7246#line 3379 "parse.y"
861bb6c1
JL
7247{ yyval.ttype = make_pointer_declarator (NULL_TREE, yyvsp[0].ttype); ;
7248 break;}
cf776105
JM
7249case 639:
7250#line 3381 "parse.y"
861bb6c1
JL
7251{ yyval.ttype = make_pointer_declarator (yyvsp[0].ftype.t, NULL_TREE); ;
7252 break;}
cf776105
JM
7253case 640:
7254#line 3383 "parse.y"
861bb6c1
JL
7255{ yyval.ttype = make_pointer_declarator (NULL_TREE, NULL_TREE); ;
7256 break;}
cf776105
JM
7257case 641:
7258#line 3385 "parse.y"
861bb6c1
JL
7259{ yyval.ttype = make_reference_declarator (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
7260 break;}
cf776105
JM
7261case 642:
7262#line 3387 "parse.y"
861bb6c1
JL
7263{ yyval.ttype = make_reference_declarator (NULL_TREE, yyvsp[0].ttype); ;
7264 break;}
cf776105
JM
7265case 643:
7266#line 3389 "parse.y"
861bb6c1
JL
7267{ yyval.ttype = make_reference_declarator (yyvsp[0].ftype.t, NULL_TREE); ;
7268 break;}
cf776105
JM
7269case 644:
7270#line 3391 "parse.y"
861bb6c1
JL
7271{ yyval.ttype = make_reference_declarator (NULL_TREE, NULL_TREE); ;
7272 break;}
cf776105
JM
7273case 645:
7274#line 3393 "parse.y"
861bb6c1
JL
7275{ tree arg = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE);
7276 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-1].ttype, arg);
7277 ;
7278 break;}
cf776105
JM
7279case 646:
7280#line 3397 "parse.y"
861bb6c1
JL
7281{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
7282 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
7283 ;
7284 break;}
cf776105
JM
7285case 648:
7286#line 3406 "parse.y"
861bb6c1
JL
7287{ yyval.ttype = yyvsp[-1].ttype; ;
7288 break;}
cf776105
JM
7289case 650:
7290#line 3410 "parse.y"
956d6950 7291{ yyval.ttype = make_call_declarator (yyval.ttype, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 7292 break;}
cf776105
JM
7293case 651:
7294#line 3412 "parse.y"
956d6950 7295{ yyval.ttype = make_call_declarator (yyval.ttype, empty_parms (), yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 7296 break;}
cf776105
JM
7297case 652:
7298#line 3414 "parse.y"
956d6950 7299{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, yyvsp[-1].ttype); ;
861bb6c1 7300 break;}
cf776105
JM
7301case 653:
7302#line 3416 "parse.y"
956d6950 7303{ yyval.ttype = build_parse_node (ARRAY_REF, yyval.ttype, NULL_TREE); ;
861bb6c1 7304 break;}
cf776105
JM
7305case 654:
7306#line 3418 "parse.y"
956d6950 7307{ yyval.ttype = make_call_declarator (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 7308 break;}
cf776105
JM
7309case 655:
7310#line 3420 "parse.y"
861bb6c1
JL
7311{ set_quals_and_spec (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
7312 break;}
cf776105
JM
7313case 656:
7314#line 3422 "parse.y"
956d6950 7315{ set_quals_and_spec (yyval.ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ;
861bb6c1 7316 break;}
cf776105
JM
7317case 657:
7318#line 3424 "parse.y"
956d6950
JL
7319{ yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
7320 break;}
cf776105
JM
7321case 658:
7322#line 3426 "parse.y"
861bb6c1
JL
7323{ yyval.ttype = build_parse_node (ARRAY_REF, NULL_TREE, NULL_TREE); ;
7324 break;}
cf776105
JM
7325case 664:
7326#line 3450 "parse.y"
861bb6c1
JL
7327{ do_pushlevel (); ;
7328 break;}
cf776105
JM
7329case 665:
7330#line 3455 "parse.y"
861bb6c1
JL
7331{ yyval.ttype = do_poplevel (); ;
7332 break;}
cf776105
JM
7333case 667:
7334#line 3463 "parse.y"
861bb6c1
JL
7335{ if (pedantic)
7336 pedwarn ("ANSI C++ forbids label declarations"); ;
7337 break;}
cf776105
JM
7338case 670:
7339#line 3474 "parse.y"
861bb6c1
JL
7340{ tree link;
7341 for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link))
7342 {
7343 tree label = shadow_label (TREE_VALUE (link));
7344 C_DECLARED_LABEL_FLAG (label) = 1;
7345 declare_nonlocal_label (label);
7346 }
7347 ;
7348 break;}
cf776105
JM
7349case 671:
7350#line 3488 "parse.y"
861bb6c1
JL
7351{;
7352 break;}
cf776105
JM
7353case 673:
7354#line 3494 "parse.y"
861bb6c1
JL
7355{
7356 if (processing_template_decl)
7357 {
7358 yyval.ttype = build_min_nt (COMPOUND_STMT, NULL_TREE);
7359 add_tree (yyval.ttype);
7360 }
7361 ;
7362 break;}
cf776105
JM
7363case 674:
7364#line 3502 "parse.y"
861bb6c1
JL
7365{
7366 if (processing_template_decl)
7367 {
7368 TREE_OPERAND (yyvsp[-3].ttype, 0) = TREE_CHAIN (yyvsp[-3].ttype);
7369 TREE_CHAIN (yyvsp[-3].ttype) = NULL_TREE;
7370 last_tree = yyvsp[-3].ttype;
7371 }
7372 yyval.ttype = yyvsp[0].ttype;
7373 ;
7374 break;}
cf776105
JM
7375case 675:
7376#line 3515 "parse.y"
861bb6c1
JL
7377{
7378 if (processing_template_decl)
7379 {
7380 yyval.ttype = build_min_nt (IF_STMT, NULL_TREE, NULL_TREE,
7381 NULL_TREE);
7382 add_tree (yyval.ttype);
7383 }
7384 cond_stmt_keyword = "if";
7385 ;
7386 break;}
cf776105
JM
7387case 676:
7388#line 3525 "parse.y"
861bb6c1
JL
7389{
7390 if (processing_template_decl)
7391 {
7392 if (last_tree != yyvsp[-2].ttype)
7393 {
7394 TREE_OPERAND (yyvsp[-2].ttype, 0) = last_tree;
7395 TREE_CHAIN (yyvsp[-2].ttype) = NULL_TREE;
7396 last_tree = yyvsp[-2].ttype;
7397 }
7398 else
7399 TREE_OPERAND (yyvsp[-2].ttype, 0) = yyvsp[0].ttype;
7400 }
7401 else
7402 {
7403 emit_line_note (input_filename, lineno);
7404 expand_start_cond (yyvsp[0].ttype, 0);
7405 }
7406 ;
7407 break;}
cf776105
JM
7408case 677:
7409#line 3544 "parse.y"
861bb6c1
JL
7410{
7411 if (processing_template_decl)
7412 {
7413 TREE_OPERAND (yyvsp[-4].ttype, 1) = TREE_CHAIN (yyvsp[-4].ttype);
7414 TREE_CHAIN (yyvsp[-4].ttype) = NULL_TREE;
7415 yyval.ttype = last_tree = yyvsp[-4].ttype;
7416 }
7417 ;
7418 break;}
cf776105
JM
7419case 678:
7420#line 3556 "parse.y"
861bb6c1
JL
7421{ finish_stmt (); ;
7422 break;}
cf776105
JM
7423case 679:
7424#line 3558 "parse.y"
861bb6c1
JL
7425{
7426 if (processing_template_decl)
7427 {
7428 yyval.ttype = build_min_nt (COMPOUND_STMT, NULL_TREE);
7429 add_tree (yyval.ttype);
7430 }
7431 ;
7432 break;}
cf776105
JM
7433case 680:
7434#line 3566 "parse.y"
861bb6c1
JL
7435{
7436 if (processing_template_decl)
7437 {
7438 TREE_OPERAND (yyvsp[-2].ttype, 0) = TREE_CHAIN (yyvsp[-2].ttype);
7439 TREE_CHAIN (yyvsp[-2].ttype) = NULL_TREE;
7440 last_tree = yyvsp[-2].ttype;
7441 }
7442 yyval.ttype = yyvsp[0].ttype;
7443 ;
7444 break;}
cf776105
JM
7445case 681:
7446#line 3579 "parse.y"
861bb6c1
JL
7447{ finish_stmt (); ;
7448 break;}
cf776105
JM
7449case 683:
7450#line 3585 "parse.y"
861bb6c1
JL
7451{ finish_stmt (); ;
7452 break;}
cf776105
JM
7453case 684:
7454#line 3587 "parse.y"
861bb6c1
JL
7455{
7456 tree expr = yyvsp[-1].ttype;
7457 if (! processing_template_decl)
7458 {
7459 emit_line_note (input_filename, lineno);
7460 /* Do default conversion if safe and possibly important,
7461 in case within ({...}). */
7462 if ((TREE_CODE (TREE_TYPE (expr)) == ARRAY_TYPE
7463 && lvalue_p (expr))
7464 || TREE_CODE (TREE_TYPE (expr)) == FUNCTION_TYPE)
7465 expr = default_conversion (expr);
7466 }
7467 cplus_expand_expr_stmt (expr);
7468 clear_momentary ();
7469 finish_stmt (); ;
7470 break;}
cf776105
JM
7471case 685:
7472#line 3603 "parse.y"
861bb6c1
JL
7473{ if (! processing_template_decl) expand_start_else (); ;
7474 break;}
cf776105
JM
7475case 686:
7476#line 3605 "parse.y"
861bb6c1
JL
7477{
7478 if (processing_template_decl)
7479 {
7480 TREE_OPERAND (yyvsp[-3].ttype, 2) = TREE_CHAIN (yyvsp[-3].ttype);
7481 TREE_CHAIN (yyvsp[-3].ttype) = NULL_TREE;
7482 last_tree = yyvsp[-3].ttype;
7483 }
7484 else
7485 expand_end_cond ();
7486 ;
7487 break;}
cf776105
JM
7488case 687:
7489#line 3616 "parse.y"
861bb6c1
JL
7490{ finish_stmt (); ;
7491 break;}
cf776105
JM
7492case 688:
7493#line 3618 "parse.y"
861bb6c1
JL
7494{ if (! processing_template_decl) expand_end_cond ();
7495 do_poplevel ();
7496 finish_stmt (); ;
7497 break;}
cf776105
JM
7498case 689:
7499#line 3622 "parse.y"
861bb6c1
JL
7500{
7501 if (processing_template_decl)
7502 {
7503 yyval.ttype = build_min_nt (WHILE_STMT, NULL_TREE, NULL_TREE);
7504 add_tree (yyval.ttype);
7505 }
7506 else
7507 {
7508 emit_nop ();
7509 emit_line_note (input_filename, lineno);
7510 expand_start_loop (1);
7511 }
7512 cond_stmt_keyword = "while";
7513 ;
7514 break;}
cf776105
JM
7515case 690:
7516#line 3637 "parse.y"
861bb6c1
JL
7517{
7518 if (processing_template_decl)
7519 {
7520 if (last_tree != yyvsp[-2].ttype)
7521 {
7522 TREE_OPERAND (yyvsp[-2].ttype, 0) = last_tree;
7523 TREE_CHAIN (yyvsp[-2].ttype) = NULL_TREE;
7524 last_tree = yyvsp[-2].ttype;
7525 }
7526 else
7527 TREE_OPERAND (yyvsp[-2].ttype, 0) = yyvsp[0].ttype;
7528 }
7529 else
7530 {
7531 emit_line_note (input_filename, lineno);
7532 expand_exit_loop_if_false (0, yyvsp[0].ttype);
7533 }
7534 ;
7535 break;}
cf776105
JM
7536case 691:
7537#line 3656 "parse.y"
861bb6c1
JL
7538{
7539 if (processing_template_decl)
7540 {
7541 TREE_OPERAND (yyvsp[-5].ttype, 1) = TREE_CHAIN (yyvsp[-5].ttype);
7542 TREE_CHAIN (yyvsp[-5].ttype) = NULL_TREE;
7543 last_tree = yyvsp[-5].ttype;
7544 }
7545 else
7546 expand_end_loop ();
7547 finish_stmt ();
7548 ;
7549 break;}
cf776105
JM
7550case 692:
7551#line 3668 "parse.y"
861bb6c1
JL
7552{
7553 if (processing_template_decl)
7554 {
7555 yyval.ttype = build_min_nt (DO_STMT, NULL_TREE, NULL_TREE);
7556 add_tree (yyval.ttype);
7557 }
7558 else
7559 {
7560 emit_nop ();
7561 emit_line_note (input_filename, lineno);
7562 expand_start_loop_continue_elsewhere (1);
7563 }
7564 ;
7565 break;}
cf776105
JM
7566case 693:
7567#line 3682 "parse.y"
861bb6c1
JL
7568{
7569 if (processing_template_decl)
7570 {
7571 TREE_OPERAND (yyvsp[-2].ttype, 0) = TREE_CHAIN (yyvsp[-2].ttype);
7572 TREE_CHAIN (yyvsp[-2].ttype) = NULL_TREE;
7573 last_tree = yyvsp[-2].ttype;
7574 }
7575 else
7576 {
7577 expand_loop_continue_here ();
7578 cond_stmt_keyword = "do";
7579 }
7580 ;
7581 break;}
cf776105
JM
7582case 694:
7583#line 3696 "parse.y"
861bb6c1
JL
7584{
7585 if (processing_template_decl)
7586 TREE_OPERAND (yyvsp[-5].ttype, 1) = yyvsp[-1].ttype;
7587 else
7588 {
7589 emit_line_note (input_filename, lineno);
7590 expand_exit_loop_if_false (0, yyvsp[-1].ttype);
7591 expand_end_loop ();
7592 }
7593 clear_momentary ();
7594 finish_stmt ();
7595 ;
7596 break;}
cf776105
JM
7597case 695:
7598#line 3709 "parse.y"
861bb6c1
JL
7599{ if (processing_template_decl)
7600 {
7601 yyval.ttype = build_min_nt (FOR_STMT, NULL_TREE, NULL_TREE,
7602 NULL_TREE, NULL_TREE);
7603 add_tree (yyval.ttype);
7604 }
7605 else
7606 emit_line_note (input_filename, lineno);
7607 if (flag_new_for_scope > 0)
7608 {
7609 /* Conditionalize .pushlevel */
7610 pushlevel (0);
7611 note_level_for_for ();
7612 clear_last_expr ();
7613 push_momentary ();
7614 expand_start_bindings (0);
7615 }
7616 ;
7617 break;}
cf776105
JM
7618case 696:
7619#line 3728 "parse.y"
861bb6c1
JL
7620{
7621 if (processing_template_decl)
7622 {
7623 if (last_tree != yyvsp[-2].ttype)
7624 {
7625 TREE_OPERAND (yyvsp[-2].ttype, 0) = TREE_CHAIN (yyvsp[-2].ttype);
7626 TREE_CHAIN (yyvsp[-2].ttype) = NULL_TREE;
7627 last_tree = yyvsp[-2].ttype;
7628 }
7629 }
7630 else
7631 {
7632 emit_nop ();
7633 emit_line_note (input_filename, lineno);
7634 expand_start_loop_continue_elsewhere (1);
7635 }
7636 ;
7637 break;}
cf776105
JM
7638case 697:
7639#line 3746 "parse.y"
861bb6c1
JL
7640{
7641 if (processing_template_decl)
7642 {
7643 if (last_tree != yyvsp[-6].ttype)
7644 {
7645 TREE_OPERAND (yyvsp[-6].ttype, 1) = last_tree;
7646 TREE_CHAIN (yyvsp[-6].ttype) = NULL_TREE;
7647 last_tree = yyvsp[-6].ttype;
7648 }
7649 else
7650 TREE_OPERAND (yyvsp[-6].ttype, 1) = yyvsp[-1].ttype;
7651 }
7652 else
7653 {
7654 emit_line_note (input_filename, lineno);
7655 if (yyvsp[-1].ttype) expand_exit_loop_if_false (0, yyvsp[-1].ttype);
7656 }
7657 ;
7658 break;}
cf776105
JM
7659case 698:
7660#line 3767 "parse.y"
861bb6c1
JL
7661{
7662 if (processing_template_decl)
7663 TREE_OPERAND (yyvsp[-9].ttype, 2) = yyvsp[-1].ttype;
7664 push_momentary ();
7665 ;
7666 break;}
cf776105
JM
7667case 699:
7668#line 3773 "parse.y"
861bb6c1
JL
7669{
7670 if (processing_template_decl)
7671 {
7672 TREE_OPERAND (yyvsp[-12].ttype, 3) = TREE_CHAIN (yyvsp[-12].ttype);
7673 TREE_CHAIN (yyvsp[-12].ttype) = NULL_TREE;
7674 last_tree = yyvsp[-12].ttype;
7675 }
7676 else
7677 {
7678 emit_line_note (input_filename, lineno);
7679 expand_loop_continue_here ();
7680 if (yyvsp[-4].ttype) cplus_expand_expr_stmt (yyvsp[-4].ttype);
7681 expand_end_loop ();
7682 }
7683 pop_momentary ();
7684 if (flag_new_for_scope > 0)
7685 {
7686 do_poplevel ();
7687 }
7688 finish_stmt (); ;
7689 break;}
cf776105
JM
7690case 700:
7691#line 3794 "parse.y"
861bb6c1
JL
7692{
7693 if (processing_template_decl)
7694 {
7695 yyval.ttype = build_min_nt (SWITCH_STMT, yyvsp[-1].ttype, NULL_TREE);
7696 add_tree (yyval.ttype);
7697 }
7698 else
7699 {
7700 emit_line_note (input_filename, lineno);
7701 c_expand_start_case (yyvsp[-1].ttype);
7702 }
7703 push_switch ();
7704 /* Don't let the tree nodes for $4 be discarded by
7705 clear_momentary during the parsing of the next stmt. */
7706 push_momentary ();
7707 ;
7708 break;}
cf776105
JM
7709case 701:
7710#line 3811 "parse.y"
861bb6c1
JL
7711{
7712 if (processing_template_decl)
7713 {
7714 TREE_OPERAND (yyvsp[-1].ttype, 1) = TREE_CHAIN (yyvsp[-1].ttype);
7715 TREE_CHAIN (yyvsp[-1].ttype) = NULL_TREE;
7716 last_tree = yyvsp[-1].ttype;
7717 }
7718 else
7719 expand_end_case (yyvsp[-3].ttype);
7720 pop_momentary ();
7721 pop_switch ();
7722 ;
7723 break;}
cf776105
JM
7724case 702:
7725#line 3824 "parse.y"
861bb6c1
JL
7726{ finish_stmt (); ;
7727 break;}
cf776105
JM
7728case 703:
7729#line 3826 "parse.y"
861bb6c1
JL
7730{ do_case (yyvsp[-1].ttype, NULL_TREE); ;
7731 break;}
cf776105
JM
7732case 705:
7733#line 3829 "parse.y"
861bb6c1
JL
7734{ do_case (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
7735 break;}
cf776105
JM
7736case 707:
7737#line 3832 "parse.y"
861bb6c1
JL
7738{ do_case (NULL_TREE, NULL_TREE); ;
7739 break;}
cf776105
JM
7740case 709:
7741#line 3835 "parse.y"
861bb6c1
JL
7742{ emit_line_note (input_filename, lineno);
7743 if (processing_template_decl)
7744 add_tree (build_min_nt (BREAK_STMT));
7745 else if ( ! expand_exit_something ())
7746 error ("break statement not within loop or switch"); ;
7747 break;}
cf776105
JM
7748case 710:
7749#line 3841 "parse.y"
861bb6c1
JL
7750{ emit_line_note (input_filename, lineno);
7751 if (processing_template_decl)
7752 add_tree (build_min_nt (CONTINUE_STMT));
7753 else if (! expand_continue_loop (0))
7754 error ("continue statement not within a loop"); ;
7755 break;}
cf776105
JM
7756case 711:
7757#line 3847 "parse.y"
861bb6c1
JL
7758{ emit_line_note (input_filename, lineno);
7759 c_expand_return (NULL_TREE); ;
7760 break;}
cf776105
JM
7761case 712:
7762#line 3850 "parse.y"
861bb6c1
JL
7763{ emit_line_note (input_filename, lineno);
7764 c_expand_return (yyvsp[-1].ttype);
7765 finish_stmt ();
7766 ;
7767 break;}
cf776105
JM
7768case 713:
7769#line 3855 "parse.y"
861bb6c1
JL
7770{ if (TREE_CHAIN (yyvsp[-2].ttype)) yyvsp[-2].ttype = combine_strings (yyvsp[-2].ttype);
7771 emit_line_note (input_filename, lineno);
7772 expand_asm (yyvsp[-2].ttype);
7773 finish_stmt ();
7774 ;
7775 break;}
cf776105
JM
7776case 714:
7777#line 3862 "parse.y"
861bb6c1
JL
7778{ if (TREE_CHAIN (yyvsp[-4].ttype)) yyvsp[-4].ttype = combine_strings (yyvsp[-4].ttype);
7779 emit_line_note (input_filename, lineno);
7780 c_expand_asm_operands (yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE,
7781 yyvsp[-6].ttype == ridpointers[(int)RID_VOLATILE],
7782 input_filename, lineno);
7783 finish_stmt ();
7784 ;
7785 break;}
cf776105
JM
7786case 715:
7787#line 3871 "parse.y"
861bb6c1
JL
7788{ if (TREE_CHAIN (yyvsp[-6].ttype)) yyvsp[-6].ttype = combine_strings (yyvsp[-6].ttype);
7789 emit_line_note (input_filename, lineno);
7790 c_expand_asm_operands (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE,
7791 yyvsp[-8].ttype == ridpointers[(int)RID_VOLATILE],
7792 input_filename, lineno);
7793 finish_stmt ();
7794 ;
7795 break;}
cf776105
JM
7796case 716:
7797#line 3881 "parse.y"
861bb6c1
JL
7798{ if (TREE_CHAIN (yyvsp[-8].ttype)) yyvsp[-8].ttype = combine_strings (yyvsp[-8].ttype);
7799 emit_line_note (input_filename, lineno);
7800 c_expand_asm_operands (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype,
7801 yyvsp[-10].ttype == ridpointers[(int)RID_VOLATILE],
7802 input_filename, lineno);
7803 finish_stmt ();
7804 ;
7805 break;}
cf776105
JM
7806case 717:
7807#line 3889 "parse.y"
861bb6c1
JL
7808{
7809 if (processing_template_decl)
7810 add_tree (build_min_nt (GOTO_STMT, yyvsp[-1].ttype));
7811 else
7812 { emit_line_note (input_filename, lineno);
7813 expand_computed_goto (yyvsp[-1].ttype); }
7814 ;
7815 break;}
cf776105
JM
7816case 718:
7817#line 3897 "parse.y"
861bb6c1
JL
7818{
7819 if (processing_template_decl)
7820 add_tree (build_min_nt (GOTO_STMT, yyvsp[-1].ttype));
7821 else
7822 {
7823 tree decl;
7824 emit_line_note (input_filename, lineno);
7825 decl = lookup_label (yyvsp[-1].ttype);
7826 TREE_USED (decl) = 1;
7827 expand_goto (decl);
7828 }
7829 ;
7830 break;}
cf776105
JM
7831case 719:
7832#line 3910 "parse.y"
861bb6c1
JL
7833{ finish_stmt (); ;
7834 break;}
cf776105
JM
7835case 720:
7836#line 3912 "parse.y"
861bb6c1
JL
7837{ error ("label must be followed by statement");
7838 yyungetc ('}', 0);
7839 finish_stmt (); ;
7840 break;}
cf776105
JM
7841case 721:
7842#line 3916 "parse.y"
861bb6c1
JL
7843{ finish_stmt (); ;
7844 break;}
cf776105
JM
7845case 723:
7846#line 3922 "parse.y"
861bb6c1
JL
7847{
7848 if (! current_function_parms_stored)
7849 store_parm_decls ();
7850 expand_start_early_try_stmts ();
7851 ;
7852 break;}
cf776105
JM
7853case 724:
7854#line 3928 "parse.y"
861bb6c1
JL
7855{ expand_start_all_catch (); ;
7856 break;}
cf776105
JM
7857case 725:
7858#line 3930 "parse.y"
861bb6c1
JL
7859{
7860 int nested = (hack_decl_function_context
7861 (current_function_decl) != NULL_TREE);
7862 expand_end_all_catch ();
7863 finish_function (lineno, (int)yyvsp[-3].itype, nested);
7864 ;
7865 break;}
cf776105
JM
7866case 726:
7867#line 3940 "parse.y"
861bb6c1
JL
7868{
7869 if (processing_template_decl)
7870 {
7871 yyval.ttype = build_min_nt (TRY_BLOCK, NULL_TREE,
7872 NULL_TREE);
7873 add_tree (yyval.ttype);
7874 }
7875 else
7876 {
7877 emit_line_note (input_filename, lineno);
7878 expand_start_try_stmts ();
7879 }
7880 ;
7881 break;}
cf776105
JM
7882case 727:
7883#line 3954 "parse.y"
861bb6c1
JL
7884{
7885 if (processing_template_decl)
7886 {
7887 TREE_OPERAND (yyvsp[-1].ttype, 0) = TREE_CHAIN (yyvsp[-1].ttype);
7888 TREE_CHAIN (yyvsp[-1].ttype) = NULL_TREE;
7889 last_tree = yyvsp[-1].ttype;
7890 }
7891 else
7892 expand_start_all_catch ();
7893 ;
7894 break;}
cf776105
JM
7895case 728:
7896#line 3965 "parse.y"
861bb6c1
JL
7897{
7898 if (processing_template_decl)
7899 {
7900 TREE_OPERAND (yyvsp[-3].ttype, 1) = TREE_CHAIN (yyvsp[-3].ttype);
7901 TREE_CHAIN (yyvsp[-3].ttype) = NULL_TREE;
7902 last_tree = yyvsp[-3].ttype;
7903 }
7904 else
7905 expand_end_all_catch ();
7906 ;
7907 break;}
cf776105
JM
7908case 731:
7909#line 3984 "parse.y"
861bb6c1
JL
7910{
7911 if (processing_template_decl)
7912 {
7913 yyval.ttype = build_min_nt (HANDLER, NULL_TREE,
7914 NULL_TREE);
7915 add_tree (yyval.ttype);
7916 }
7917 ;
7918 break;}
cf776105
JM
7919case 732:
7920#line 3993 "parse.y"
861bb6c1
JL
7921{
7922 if (processing_template_decl)
7923 {
7924 TREE_OPERAND (yyvsp[-2].ttype, 0) = TREE_CHAIN (yyvsp[-2].ttype);
7925 TREE_CHAIN (yyvsp[-2].ttype) = NULL_TREE;
7926 last_tree = yyvsp[-2].ttype;
7927 }
7928 ;
7929 break;}
cf776105
JM
7930case 733:
7931#line 4002 "parse.y"
861bb6c1
JL
7932{
7933 if (processing_template_decl)
7934 {
7935 TREE_OPERAND (yyvsp[-4].ttype, 1) = TREE_CHAIN (yyvsp[-4].ttype);
7936 TREE_CHAIN (yyvsp[-4].ttype) = NULL_TREE;
7937 last_tree = yyvsp[-4].ttype;
7938 }
7939 else
7940 expand_end_catch_block ();
7941 ;
7942 break;}
cf776105
JM
7943case 737:
7944#line 4022 "parse.y"
861bb6c1
JL
7945{ expand_start_catch_block (NULL_TREE, NULL_TREE); ;
7946 break;}
cf776105
JM
7947case 738:
7948#line 4038 "parse.y"
861bb6c1
JL
7949{ check_for_new_type ("inside exception declarations", yyvsp[-1].ftype);
7950 expand_start_catch_block (TREE_PURPOSE (yyvsp[-1].ftype.t),
7951 TREE_VALUE (yyvsp[-1].ftype.t)); ;
7952 break;}
cf776105
JM
7953case 739:
7954#line 4045 "parse.y"
861bb6c1
JL
7955{ tree label;
7956 do_label:
7957 label = define_label (input_filename, lineno, yyvsp[-1].ttype);
7958 if (label && ! minimal_parse_mode)
7959 expand_label (label);
7960 ;
7961 break;}
cf776105
JM
7962case 740:
7963#line 4052 "parse.y"
861bb6c1
JL
7964{ goto do_label; ;
7965 break;}
cf776105
JM
7966case 741:
7967#line 4054 "parse.y"
861bb6c1
JL
7968{ goto do_label; ;
7969 break;}
cf776105
JM
7970case 742:
7971#line 4056 "parse.y"
956d6950
JL
7972{ goto do_label; ;
7973 break;}
cf776105
JM
7974case 743:
7975#line 4061 "parse.y"
861bb6c1
JL
7976{ if (yyvsp[-1].ttype) cplus_expand_expr_stmt (yyvsp[-1].ttype); ;
7977 break;}
cf776105
JM
7978case 745:
7979#line 4064 "parse.y"
861bb6c1
JL
7980{ if (pedantic)
7981 pedwarn ("ANSI C++ forbids compound statements inside for initializations");
7982 ;
7983 break;}
cf776105
JM
7984case 746:
7985#line 4073 "parse.y"
861bb6c1
JL
7986{ emit_line_note (input_filename, lineno);
7987 yyval.ttype = NULL_TREE; ;
7988 break;}
cf776105
JM
7989case 747:
7990#line 4076 "parse.y"
861bb6c1
JL
7991{ emit_line_note (input_filename, lineno); ;
7992 break;}
cf776105
JM
7993case 748:
7994#line 4081 "parse.y"
861bb6c1
JL
7995{ yyval.ttype = NULL_TREE; ;
7996 break;}
cf776105
JM
7997case 750:
7998#line 4084 "parse.y"
861bb6c1
JL
7999{ yyval.ttype = NULL_TREE; ;
8000 break;}
cf776105
JM
8001case 751:
8002#line 4091 "parse.y"
861bb6c1
JL
8003{ yyval.ttype = NULL_TREE; ;
8004 break;}
cf776105
JM
8005case 754:
8006#line 4098 "parse.y"
861bb6c1
JL
8007{ yyval.ttype = chainon (yyval.ttype, yyvsp[0].ttype); ;
8008 break;}
cf776105
JM
8009case 755:
8010#line 4103 "parse.y"
861bb6c1
JL
8011{ yyval.ttype = build_tree_list (yyval.ttype, yyvsp[-1].ttype); ;
8012 break;}
cf776105
JM
8013case 756:
8014#line 4108 "parse.y"
861bb6c1
JL
8015{ yyval.ttype = tree_cons (NULL_TREE, yyval.ttype, NULL_TREE); ;
8016 break;}
cf776105
JM
8017case 757:
8018#line 4110 "parse.y"
861bb6c1
JL
8019{ yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyval.ttype); ;
8020 break;}
cf776105
JM
8021case 758:
8022#line 4121 "parse.y"
861bb6c1
JL
8023{
8024 yyval.ttype = empty_parms();
8025 ;
8026 break;}
cf776105
JM
8027case 760:
8028#line 4126 "parse.y"
861bb6c1
JL
8029{ yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ftype.t, void_list_node);
8030 TREE_PARMLIST (yyval.ttype) = 1;
8031 check_for_new_type ("inside parameter list", yyvsp[0].ftype); ;
8032 break;}
cf776105
JM
8033case 761:
8034#line 4135 "parse.y"
861bb6c1
JL
8035{
8036 yyval.ttype = chainon (yyval.ttype, void_list_node);
8037 TREE_PARMLIST (yyval.ttype) = 1;
8038 ;
8039 break;}
cf776105
JM
8040case 762:
8041#line 4140 "parse.y"
861bb6c1
JL
8042{
8043 TREE_PARMLIST (yyval.ttype) = 1;
8044 ;
8045 break;}
cf776105
JM
8046case 763:
8047#line 4145 "parse.y"
861bb6c1
JL
8048{
8049 TREE_PARMLIST (yyval.ttype) = 1;
8050 ;
8051 break;}
cf776105
JM
8052case 764:
8053#line 4149 "parse.y"
861bb6c1
JL
8054{
8055 yyval.ttype = build_tree_list (NULL_TREE, yyvsp[-1].ftype.t);
8056 TREE_PARMLIST (yyval.ttype) = 1;
8057 ;
8058 break;}
cf776105
JM
8059case 765:
8060#line 4154 "parse.y"
861bb6c1
JL
8061{
8062 yyval.ttype = NULL_TREE;
8063 ;
8064 break;}
cf776105
JM
8065case 766:
8066#line 4158 "parse.y"
861bb6c1
JL
8067{
8068 TREE_PARMLIST (yyval.ttype) = 1;
8069 ;
8070 break;}
cf776105
JM
8071case 767:
8072#line 4162 "parse.y"
861bb6c1
JL
8073{
8074 TREE_PARMLIST (yyval.ttype) = 1;
8075 ;
8076 break;}
cf776105
JM
8077case 768:
8078#line 4166 "parse.y"
861bb6c1
JL
8079{
8080 yyval.ttype = build_tree_list (NULL_TREE, yyvsp[-1].ftype.t);
8081 TREE_PARMLIST (yyval.ttype) = 1;
8082 ;
8083 break;}
cf776105
JM
8084case 769:
8085#line 4171 "parse.y"
861bb6c1
JL
8086{
8087 /* This helps us recover from really nasty
8088 parse errors, for example, a missing right
8089 parenthesis. */
8090 yyerror ("possibly missing ')'");
8091 yyval.ttype = chainon (yyval.ttype, void_list_node);
8092 TREE_PARMLIST (yyval.ttype) = 1;
8093 yyungetc (':', 0);
8094 yychar = ')';
8095 ;
8096 break;}
cf776105
JM
8097case 770:
8098#line 4182 "parse.y"
861bb6c1
JL
8099{
8100 /* This helps us recover from really nasty
8101 parse errors, for example, a missing right
8102 parenthesis. */
8103 yyerror ("possibly missing ')'");
8104 yyval.ttype = tree_cons (NULL_TREE, yyvsp[-1].ftype.t, void_list_node);
8105 TREE_PARMLIST (yyval.ttype) = 1;
8106 yyungetc (':', 0);
8107 yychar = ')';
8108 ;
8109 break;}
cf776105
JM
8110case 771:
8111#line 4197 "parse.y"
861bb6c1
JL
8112{ maybe_snarf_defarg (); ;
8113 break;}
cf776105
JM
8114case 772:
8115#line 4199 "parse.y"
861bb6c1
JL
8116{ yyval.ttype = yyvsp[0].ttype; ;
8117 break;}
cf776105
JM
8118case 775:
8119#line 4210 "parse.y"
861bb6c1
JL
8120{ check_for_new_type ("in a parameter list", yyvsp[0].ftype);
8121 yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ftype.t); ;
8122 break;}
cf776105
JM
8123case 776:
8124#line 4213 "parse.y"
861bb6c1
JL
8125{ check_for_new_type ("in a parameter list", yyvsp[-1].ftype);
8126 yyval.ttype = build_tree_list (yyvsp[0].ttype, yyvsp[-1].ftype.t); ;
8127 break;}
cf776105
JM
8128case 777:
8129#line 4216 "parse.y"
861bb6c1
JL
8130{ check_for_new_type ("in a parameter list", yyvsp[0].ftype);
8131 yyval.ttype = chainon (yyval.ttype, yyvsp[0].ftype.t); ;
8132 break;}
cf776105
JM
8133case 778:
8134#line 4219 "parse.y"
861bb6c1
JL
8135{ yyval.ttype = chainon (yyval.ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
8136 break;}
cf776105
JM
8137case 779:
8138#line 4221 "parse.y"
861bb6c1
JL
8139{ yyval.ttype = chainon (yyval.ttype, build_tree_list (yyvsp[0].ttype, yyvsp[-2].ttype)); ;
8140 break;}
cf776105
JM
8141case 781:
8142#line 4227 "parse.y"
861bb6c1
JL
8143{ check_for_new_type ("in a parameter list", yyvsp[-1].ftype);
8144 yyval.ttype = build_tree_list (NULL_TREE, yyvsp[-1].ftype.t); ;
8145 break;}
cf776105
JM
8146case 782:
8147#line 4237 "parse.y"
861bb6c1
JL
8148{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
8149 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag;
8150 yyval.ftype.t = build_tree_list (specs, yyvsp[0].ttype); ;
8151 break;}
cf776105
JM
8152case 783:
8153#line 4241 "parse.y"
861bb6c1
JL
8154{ yyval.ftype.t = build_tree_list (yyvsp[-1].ftype.t, yyvsp[0].ttype);
8155 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
8156 break;}
cf776105
JM
8157case 784:
8158#line 4244 "parse.y"
861bb6c1
JL
8159{ yyval.ftype.t = build_tree_list (get_decl_list (yyvsp[-1].ftype.t), yyvsp[0].ttype);
8160 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
8161 break;}
cf776105
JM
8162case 785:
8163#line 4247 "parse.y"
861bb6c1
JL
8164{ tree specs = strip_attrs (yyvsp[-1].ftype.t);
8165 yyval.ftype.t = build_tree_list (specs, yyvsp[0].ttype);
8166 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
8167 break;}
cf776105
JM
8168case 786:
8169#line 4251 "parse.y"
861bb6c1
JL
8170{ tree specs = strip_attrs (yyvsp[0].ftype.t);
8171 yyval.ftype.t = build_tree_list (specs, NULL_TREE);
8172 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
8173 break;}
cf776105
JM
8174case 787:
8175#line 4255 "parse.y"
861bb6c1
JL
8176{ tree specs = strip_attrs (yyvsp[-1].ttype);
8177 yyval.ftype.t = build_tree_list (specs, yyvsp[0].ttype);
8178 yyval.ftype.new_type_flag = 0; ;
8179 break;}
cf776105
JM
8180case 788:
8181#line 4262 "parse.y"
861bb6c1
JL
8182{ yyval.ftype.t = build_tree_list (NULL_TREE, yyvsp[0].ftype.t);
8183 yyval.ftype.new_type_flag = yyvsp[0].ftype.new_type_flag; ;
8184 break;}
cf776105
JM
8185case 789:
8186#line 4265 "parse.y"
861bb6c1
JL
8187{ yyval.ftype.t = build_tree_list (yyvsp[0].ttype, yyvsp[-1].ftype.t);
8188 yyval.ftype.new_type_flag = yyvsp[-1].ftype.new_type_flag; ;
8189 break;}
cf776105
JM
8190case 792:
8191#line 4276 "parse.y"
861bb6c1
JL
8192{ see_typename (); ;
8193 break;}
cf776105
JM
8194case 793:
8195#line 4281 "parse.y"
861bb6c1
JL
8196{
8197 error ("type specifier omitted for parameter");
8198 yyval.ttype = build_tree_list (integer_type_node, NULL_TREE);
8199 ;
8200 break;}
cf776105
JM
8201case 794:
8202#line 4286 "parse.y"
861bb6c1
JL
8203{
8204 error ("type specifier omitted for parameter");
8205 if (TREE_CODE (yyval.ttype) == SCOPE_REF
73b0fce8
KL
8206 && (TREE_CODE (TREE_OPERAND (yyval.ttype, 0)) == TEMPLATE_TYPE_PARM
8207 || TREE_CODE (TREE_OPERAND (yyval.ttype, 0)) == TEMPLATE_TEMPLATE_PARM))
861bb6c1
JL
8208 cp_error (" perhaps you want `typename %E' to make it a type", yyval.ttype);
8209 yyval.ttype = build_tree_list (integer_type_node, yyval.ttype);
8210 ;
8211 break;}
cf776105
JM
8212case 795:
8213#line 4298 "parse.y"
861bb6c1
JL
8214{ yyval.ttype = NULL_TREE; ;
8215 break;}
cf776105
JM
8216case 796:
8217#line 4300 "parse.y"
861bb6c1
JL
8218{ yyval.ttype = yyvsp[-1].ttype; ;
8219 break;}
cf776105
JM
8220case 797:
8221#line 4302 "parse.y"
861bb6c1
JL
8222{ yyval.ttype = build_decl_list (NULL_TREE, NULL_TREE); ;
8223 break;}
cf776105
JM
8224case 798:
8225#line 4307 "parse.y"
861bb6c1
JL
8226{ yyval.ttype = build_decl_list (NULL_TREE, groktypename(yyvsp[0].ftype.t)); ;
8227 break;}
cf776105
JM
8228case 800:
8229#line 4313 "parse.y"
861bb6c1
JL
8230{
8231 TREE_CHAIN (yyvsp[0].ttype) = yyval.ttype;
8232 yyval.ttype = yyvsp[0].ttype;
8233 ;
8234 break;}
cf776105
JM
8235case 801:
8236#line 4321 "parse.y"
861bb6c1
JL
8237{ yyval.ttype = NULL_TREE; ;
8238 break;}
cf776105
JM
8239case 802:
8240#line 4323 "parse.y"
861bb6c1
JL
8241{ yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
8242 break;}
cf776105
JM
8243case 803:
8244#line 4325 "parse.y"
861bb6c1
JL
8245{ yyval.ttype = make_reference_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
8246 break;}
cf776105
JM
8247case 804:
8248#line 4327 "parse.y"
861bb6c1
JL
8249{ tree arg = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype);
8250 yyval.ttype = build_parse_node (SCOPE_REF, yyvsp[-2].ttype, arg);
8251 ;
8252 break;}
cf776105
JM
8253case 805:
8254#line 4334 "parse.y"
956d6950 8255{ got_scope = NULL_TREE; ;
861bb6c1 8256 break;}
cf776105
JM
8257case 806:
8258#line 4339 "parse.y"
956d6950 8259{ yyval.ttype = ansi_opname[MULT_EXPR]; ;
861bb6c1 8260 break;}
cf776105
JM
8261case 807:
8262#line 4341 "parse.y"
956d6950 8263{ yyval.ttype = ansi_opname[TRUNC_DIV_EXPR]; ;
861bb6c1 8264 break;}
cf776105
JM
8265case 808:
8266#line 4343 "parse.y"
956d6950 8267{ yyval.ttype = ansi_opname[TRUNC_MOD_EXPR]; ;
861bb6c1 8268 break;}
cf776105
JM
8269case 809:
8270#line 4345 "parse.y"
956d6950 8271{ yyval.ttype = ansi_opname[PLUS_EXPR]; ;
861bb6c1 8272 break;}
cf776105
JM
8273case 810:
8274#line 4347 "parse.y"
956d6950 8275{ yyval.ttype = ansi_opname[MINUS_EXPR]; ;
861bb6c1 8276 break;}
cf776105
JM
8277case 811:
8278#line 4349 "parse.y"
956d6950 8279{ yyval.ttype = ansi_opname[BIT_AND_EXPR]; ;
861bb6c1 8280 break;}
cf776105
JM
8281case 812:
8282#line 4351 "parse.y"
956d6950 8283{ yyval.ttype = ansi_opname[BIT_IOR_EXPR]; ;
861bb6c1 8284 break;}
cf776105
JM
8285case 813:
8286#line 4353 "parse.y"
956d6950 8287{ yyval.ttype = ansi_opname[BIT_XOR_EXPR]; ;
861bb6c1 8288 break;}
cf776105
JM
8289case 814:
8290#line 4355 "parse.y"
956d6950 8291{ yyval.ttype = ansi_opname[BIT_NOT_EXPR]; ;
861bb6c1 8292 break;}
cf776105
JM
8293case 815:
8294#line 4357 "parse.y"
956d6950 8295{ yyval.ttype = ansi_opname[COMPOUND_EXPR]; ;
861bb6c1 8296 break;}
cf776105
JM
8297case 816:
8298#line 4359 "parse.y"
956d6950 8299{ yyval.ttype = ansi_opname[yyvsp[0].code]; ;
861bb6c1 8300 break;}
cf776105
JM
8301case 817:
8302#line 4361 "parse.y"
956d6950 8303{ yyval.ttype = ansi_opname[LT_EXPR]; ;
861bb6c1 8304 break;}
cf776105
JM
8305case 818:
8306#line 4363 "parse.y"
956d6950 8307{ yyval.ttype = ansi_opname[GT_EXPR]; ;
861bb6c1 8308 break;}
cf776105
JM
8309case 819:
8310#line 4365 "parse.y"
956d6950 8311{ yyval.ttype = ansi_opname[yyvsp[0].code]; ;
861bb6c1 8312 break;}
cf776105
JM
8313case 820:
8314#line 4367 "parse.y"
956d6950 8315{ yyval.ttype = ansi_assopname[yyvsp[0].code]; ;
861bb6c1 8316 break;}
cf776105
JM
8317case 821:
8318#line 4369 "parse.y"
956d6950 8319{ yyval.ttype = ansi_opname [MODIFY_EXPR]; ;
861bb6c1 8320 break;}
cf776105
JM
8321case 822:
8322#line 4371 "parse.y"
861bb6c1
JL
8323{ yyval.ttype = ansi_opname[yyvsp[0].code]; ;
8324 break;}
cf776105
JM
8325case 823:
8326#line 4373 "parse.y"
956d6950 8327{ yyval.ttype = ansi_opname[yyvsp[0].code]; ;
861bb6c1 8328 break;}
cf776105
JM
8329case 824:
8330#line 4375 "parse.y"
956d6950 8331{ yyval.ttype = ansi_opname[POSTINCREMENT_EXPR]; ;
861bb6c1 8332 break;}
cf776105
JM
8333case 825:
8334#line 4377 "parse.y"
956d6950 8335{ yyval.ttype = ansi_opname[PREDECREMENT_EXPR]; ;
861bb6c1 8336 break;}
cf776105
JM
8337case 826:
8338#line 4379 "parse.y"
956d6950 8339{ yyval.ttype = ansi_opname[TRUTH_ANDIF_EXPR]; ;
861bb6c1 8340 break;}
cf776105
JM
8341case 827:
8342#line 4381 "parse.y"
956d6950 8343{ yyval.ttype = ansi_opname[TRUTH_ORIF_EXPR]; ;
861bb6c1 8344 break;}
cf776105
JM
8345case 828:
8346#line 4383 "parse.y"
956d6950 8347{ yyval.ttype = ansi_opname[TRUTH_NOT_EXPR]; ;
861bb6c1 8348 break;}
cf776105
JM
8349case 829:
8350#line 4385 "parse.y"
956d6950 8351{ yyval.ttype = ansi_opname[COND_EXPR]; ;
861bb6c1 8352 break;}
cf776105
JM
8353case 830:
8354#line 4387 "parse.y"
956d6950 8355{ yyval.ttype = ansi_opname[yyvsp[0].code]; ;
861bb6c1 8356 break;}
cf776105
JM
8357case 831:
8358#line 4389 "parse.y"
956d6950 8359{ yyval.ttype = ansi_opname[COMPONENT_REF]; ;
861bb6c1 8360 break;}
cf776105
JM
8361case 832:
8362#line 4391 "parse.y"
956d6950 8363{ yyval.ttype = ansi_opname[MEMBER_REF]; ;
861bb6c1 8364 break;}
cf776105
JM
8365case 833:
8366#line 4393 "parse.y"
956d6950 8367{ yyval.ttype = ansi_opname[CALL_EXPR]; ;
861bb6c1 8368 break;}
cf776105
JM
8369case 834:
8370#line 4395 "parse.y"
956d6950 8371{ yyval.ttype = ansi_opname[ARRAY_REF]; ;
861bb6c1 8372 break;}
cf776105
JM
8373case 835:
8374#line 4397 "parse.y"
956d6950 8375{ yyval.ttype = ansi_opname[NEW_EXPR]; ;
861bb6c1 8376 break;}
cf776105
JM
8377case 836:
8378#line 4399 "parse.y"
956d6950 8379{ yyval.ttype = ansi_opname[DELETE_EXPR]; ;
861bb6c1 8380 break;}
cf776105
JM
8381case 837:
8382#line 4401 "parse.y"
956d6950 8383{ yyval.ttype = ansi_opname[VEC_NEW_EXPR]; ;
861bb6c1 8384 break;}
cf776105
JM
8385case 838:
8386#line 4403 "parse.y"
956d6950 8387{ yyval.ttype = ansi_opname[VEC_DELETE_EXPR]; ;
861bb6c1 8388 break;}
cf776105
JM
8389case 839:
8390#line 4406 "parse.y"
956d6950
JL
8391{ yyval.ttype = grokoptypename (yyvsp[-1].ftype.t, yyvsp[0].ttype); ;
8392 break;}
cf776105
JM
8393case 840:
8394#line 4408 "parse.y"
861bb6c1
JL
8395{ yyval.ttype = ansi_opname[ERROR_MARK]; ;
8396 break;}
8397}
8398 /* the action file gets copied in in place of this dollarsign */
67da3287 8399#line 498 "/usr/lib/bison.simple"
861bb6c1
JL
8400\f
8401 yyvsp -= yylen;
8402 yyssp -= yylen;
8403#ifdef YYLSP_NEEDED
8404 yylsp -= yylen;
8405#endif
8406
8407#if YYDEBUG != 0
8408 if (yydebug)
8409 {
8410 short *ssp1 = yyss - 1;
8411 fprintf (stderr, "state stack now");
8412 while (ssp1 != yyssp)
8413 fprintf (stderr, " %d", *++ssp1);
8414 fprintf (stderr, "\n");
8415 }
8416#endif
8417
8418 *++yyvsp = yyval;
8419
8420#ifdef YYLSP_NEEDED
8421 yylsp++;
8422 if (yylen == 0)
8423 {
8424 yylsp->first_line = yylloc.first_line;
8425 yylsp->first_column = yylloc.first_column;
8426 yylsp->last_line = (yylsp-1)->last_line;
8427 yylsp->last_column = (yylsp-1)->last_column;
8428 yylsp->text = 0;
8429 }
8430 else
8431 {
8432 yylsp->last_line = (yylsp+yylen-1)->last_line;
8433 yylsp->last_column = (yylsp+yylen-1)->last_column;
8434 }
8435#endif
8436
8437 /* Now "shift" the result of the reduction.
8438 Determine what state that goes to,
8439 based on the state we popped back to
8440 and the rule number reduced by. */
8441
8442 yyn = yyr1[yyn];
8443
8444 yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
8445 if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
8446 yystate = yytable[yystate];
8447 else
8448 yystate = yydefgoto[yyn - YYNTBASE];
8449
8450 goto yynewstate;
8451
8452yyerrlab: /* here on detecting error */
8453
8454 if (! yyerrstatus)
8455 /* If not already recovering from an error, report this error. */
8456 {
8457 ++yynerrs;
8458
8459#ifdef YYERROR_VERBOSE
8460 yyn = yypact[yystate];
8461
8462 if (yyn > YYFLAG && yyn < YYLAST)
8463 {
8464 int size = 0;
8465 char *msg;
8466 int x, count;
8467
8468 count = 0;
8469 /* Start X at -yyn if nec to avoid negative indexes in yycheck. */
8470 for (x = (yyn < 0 ? -yyn : 0);
8471 x < (sizeof(yytname) / sizeof(char *)); x++)
8472 if (yycheck[x + yyn] == x)
8473 size += strlen(yytname[x]) + 15, count++;
8474 msg = (char *) malloc(size + 15);
8475 if (msg != 0)
8476 {
8477 strcpy(msg, "parse error");
8478
8479 if (count < 5)
8480 {
8481 count = 0;
8482 for (x = (yyn < 0 ? -yyn : 0);
8483 x < (sizeof(yytname) / sizeof(char *)); x++)
8484 if (yycheck[x + yyn] == x)
8485 {
8486 strcat(msg, count == 0 ? ", expecting `" : " or `");
8487 strcat(msg, yytname[x]);
8488 strcat(msg, "'");
8489 count++;
8490 }
8491 }
8492 yyerror(msg);
8493 free(msg);
8494 }
8495 else
8496 yyerror ("parse error; also virtual memory exceeded");
8497 }
8498 else
8499#endif /* YYERROR_VERBOSE */
8500 yyerror("parse error");
8501 }
8502
8503 goto yyerrlab1;
8504yyerrlab1: /* here on error raised explicitly by an action */
8505
8506 if (yyerrstatus == 3)
8507 {
8508 /* if just tried and failed to reuse lookahead token after an error, discard it. */
8509
8510 /* return failure if at end of input */
8511 if (yychar == YYEOF)
8512 YYABORT;
8513
8514#if YYDEBUG != 0
8515 if (yydebug)
8516 fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
8517#endif
8518
8519 yychar = YYEMPTY;
8520 }
8521
8522 /* Else will try to reuse lookahead token
8523 after shifting the error token. */
8524
8525 yyerrstatus = 3; /* Each real token shifted decrements this */
8526
8527 goto yyerrhandle;
8528
8529yyerrdefault: /* current state does not do anything special for the error token. */
8530
8531#if 0
8532 /* This is wrong; only states that explicitly want error tokens
8533 should shift them. */
8534 yyn = yydefact[yystate]; /* If its default is to accept any token, ok. Otherwise pop it.*/
8535 if (yyn) goto yydefault;
8536#endif
8537
8538yyerrpop: /* pop the current state because it cannot handle the error token */
8539
8540 if (yyssp == yyss) YYABORT;
8541 yyvsp--;
8542 yystate = *--yyssp;
8543#ifdef YYLSP_NEEDED
8544 yylsp--;
8545#endif
8546
8547#if YYDEBUG != 0
8548 if (yydebug)
8549 {
8550 short *ssp1 = yyss - 1;
8551 fprintf (stderr, "Error: state stack now");
8552 while (ssp1 != yyssp)
8553 fprintf (stderr, " %d", *++ssp1);
8554 fprintf (stderr, "\n");
8555 }
8556#endif
8557
8558yyerrhandle:
8559
8560 yyn = yypact[yystate];
8561 if (yyn == YYFLAG)
8562 goto yyerrdefault;
8563
8564 yyn += YYTERROR;
8565 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
8566 goto yyerrdefault;
8567
8568 yyn = yytable[yyn];
8569 if (yyn < 0)
8570 {
8571 if (yyn == YYFLAG)
8572 goto yyerrpop;
8573 yyn = -yyn;
8574 goto yyreduce;
8575 }
8576 else if (yyn == 0)
8577 goto yyerrpop;
8578
8579 if (yyn == YYFINAL)
8580 YYACCEPT;
8581
8582#if YYDEBUG != 0
8583 if (yydebug)
8584 fprintf(stderr, "Shifting error token, ");
8585#endif
8586
8587 *++yyvsp = yylval;
8588#ifdef YYLSP_NEEDED
8589 *++yylsp = yylloc;
8590#endif
8591
8592 yystate = yyn;
8593 goto yynewstate;
8594}
cf776105 8595#line 4411 "parse.y"
861bb6c1
JL
8596
8597
8598#ifdef SPEW_DEBUG
8599const char *
8600debug_yytranslate (value)
8601 int value;
8602{
8603 return yytname[YYTRANSLATE (value)];
8604}
8605
8606#endif
This page took 1.072672 seconds and 5 git commands to generate.