/usr.bin/awk/ytab.c
C | 2195 lines | 1865 code | 65 blank | 265 comment | 111 complexity | 4c846f52d7d4e89a534a72ba795792a8 MD5 | raw file
Possible License(s): AGPL-1.0
Large files files are truncated, but you can click here to view the full file
- /* $Id: ytab.c 563 1998-04-07 16:19:01Z tribby $ */
- #ifdef __ORCAC__
- segment "lex";
- #endif
- /* NOTE: line directives commented-out in GNO version, for debugger */
- /* # line 26 "awkgram.y" */
- #include <stdio.h>
- #include <string.h>
- #include "awk.h"
- void checkdup(Node *list, Cell *item);
- int yywrap(void) { return(1); }
- Node *beginloc = 0;
- Node *endloc = 0;
- int infunc = 0; /* = 1 if in arglist or body of func */
- int inloop = 0; /* = 1 if in while, for, do */
- char *curfname = 0; /* current function name */
- Node *arglist = 0; /* list of args for current function */
- /* # line 41 "awkgram.y" */
- typedef union {
- Node *p;
- Cell *cp;
- int i;
- char *s;
- } YYSTYPE;
- #ifdef __cplusplus
- # include <stdio.h>
- # include <yacc.h>
- #endif /* __cplusplus */
- # define FIRSTTOKEN 257
- # define PROGRAM 258
- # define PASTAT 259
- # define PASTAT2 260
- # define XBEGIN 261
- # define XEND 262
- # define NL 263
- # define ARRAY 264
- # define MATCH 265
- # define NOTMATCH 266
- # define MATCHOP 267
- # define FINAL 268
- # define DOT 269
- # define ALL 270
- # define CCL 271
- # define NCCL 272
- # define CHAR 273
- # define OR 274
- # define STAR 275
- # define QUEST 276
- # define PLUS 277
- # define AND 278
- # define BOR 279
- # define APPEND 280
- # define EQ 281
- # define GE 282
- # define GT 283
- # define LE 284
- # define LT 285
- # define NE 286
- # define IN 287
- # define ARG 288
- # define BLTIN 289
- # define BREAK 290
- # define CLOSE 291
- # define CONTINUE 292
- # define DELETE 293
- # define DO 294
- # define EXIT 295
- # define FOR 296
- # define FUNC 297
- # define SUB 298
- # define GSUB 299
- # define IF 300
- # define INDEX 301
- # define LSUBSTR 302
- # define MATCHFCN 303
- # define NEXT 304
- # define NEXTFILE 305
- # define ADD 306
- # define MINUS 307
- # define MULT 308
- # define DIVIDE 309
- # define MOD 310
- # define ASSIGN 311
- # define ASGNOP 312
- # define ADDEQ 313
- # define SUBEQ 314
- # define MULTEQ 315
- # define DIVEQ 316
- # define MODEQ 317
- # define POWEQ 318
- # define PRINT 319
- # define PRINTF 320
- # define SPRINTF 321
- # define ELSE 322
- # define INTEST 323
- # define CONDEXPR 324
- # define POSTINCR 325
- # define PREINCR 326
- # define POSTDECR 327
- # define PREDECR 328
- # define VAR 329
- # define IVAR 330
- # define VARNF 331
- # define CALL 332
- # define NUMBER 333
- # define STRING 334
- # define REGEXPR 335
- # define GETLINE 336
- # define RETURN 337
- # define SPLIT 338
- # define SUBSTR 339
- # define WHILE 340
- # define CAT 341
- # define NOT 342
- # define UMINUS 343
- # define POWER 344
- # define DECR 345
- # define INCR 346
- # define INDIRECT 347
- # define LASTTOKEN 348
- #define yyclearin yychar = -1
- #define yyerrok yyerrflag = 0
- extern int yychar;
- #ifndef YYMAXDEPTH
- #define YYMAXDEPTH 150
- #endif
- /* __YYSCLASS defines the scoping/storage class for global objects
- * that are NOT renamed by the -p option. By default these names
- * are going to be 'static' so that multi-definition errors
- * will not occur with multiple parsers.
- * If you want (unsupported) access to internal names you need
- * to define this to be null so it implies 'extern' scope.
- * This should not be used in conjunction with -p.
- */
- #ifndef __YYSCLASS
- # define __YYSCLASS static
- #endif
- YYSTYPE yylval;
- __YYSCLASS YYSTYPE yyval;
- typedef int yytabelem;
- # define YYERRCODE 256
- /* # line 444 "awkgram.y" */
- void setfname(Cell *p)
- {
- if (isarr(p))
- ERROR "%s is an array, not a function", p->nval SYNTAX;
- else if (isfcn(p))
- ERROR "you can't define function %s more than once", p->nval SYNTAX;
- curfname = p->nval;
- }
- int constnode(Node *p)
- {
- return isvalue(p) && ((Cell *) (p->narg[0]))->csub == CCON;
- }
- char *strnode(Node *p)
- {
- return ((Cell *)(p->narg[0]))->sval;
- }
- Node *notnull(Node *n)
- {
- switch (n->nobj) {
- case LE: case LT: case EQ: case NE: case GT: case GE:
- case BOR: case AND: case NOT:
- return n;
- default:
- return op2(NE, n, nullnode);
- }
- }
- void checkdup(Node *vl, Cell *cp) /* check if name already in list */
- {
- char *s = cp->nval;
- for ( ; vl; vl = vl->nnext) {
- if (strcmp(s, ((Cell *)(vl->narg[0]))->nval) == 0) {
- ERROR "duplicate argument %s", s SYNTAX;
- break;
- }
- }
- }
- __YYSCLASS yytabelem yyexca[] ={
- -1, 0,
- 0, 28,
- 261, 28,
- 262, 28,
- 123, 28,
- 40, 28,
- 47, 28,
- 288, 28,
- 289, 28,
- 297, 28,
- 298, 28,
- 299, 28,
- 301, 28,
- 303, 28,
- 321, 28,
- 329, 28,
- 330, 28,
- 331, 28,
- 332, 28,
- 333, 28,
- 334, 28,
- 336, 28,
- 338, 28,
- 339, 28,
- 43, 28,
- 45, 28,
- 342, 28,
- 345, 28,
- 346, 28,
- 347, 28,
- -2, 0,
- -1, 1,
- 0, -1,
- -2, 0,
- -1, 157,
- 59, 30,
- -2, 0,
- -1, 176,
- 124, 0,
- 267, 0,
- 281, 0,
- 282, 0,
- 283, 0,
- 284, 0,
- 285, 0,
- 286, 0,
- 287, 0,
- -2, 63,
- -1, 177,
- 124, 0,
- 267, 0,
- 281, 0,
- 282, 0,
- 283, 0,
- 284, 0,
- 285, 0,
- 286, 0,
- 287, 0,
- -2, 64,
- -1, 178,
- 124, 0,
- 267, 0,
- 281, 0,
- 282, 0,
- 283, 0,
- 284, 0,
- 285, 0,
- 286, 0,
- 287, 0,
- -2, 65,
- -1, 179,
- 124, 0,
- 267, 0,
- 281, 0,
- 282, 0,
- 283, 0,
- 284, 0,
- 285, 0,
- 286, 0,
- 287, 0,
- -2, 66,
- -1, 180,
- 124, 0,
- 267, 0,
- 281, 0,
- 282, 0,
- 283, 0,
- 284, 0,
- 285, 0,
- 286, 0,
- 287, 0,
- -2, 67,
- -1, 181,
- 124, 0,
- 267, 0,
- 281, 0,
- 282, 0,
- 283, 0,
- 284, 0,
- 285, 0,
- 286, 0,
- 287, 0,
- -2, 68,
- -1, 183,
- 124, 0,
- 267, 0,
- 281, 0,
- 282, 0,
- 283, 0,
- 284, 0,
- 285, 0,
- 286, 0,
- 287, 0,
- -2, 70,
- -1, 288,
- 267, 0,
- 287, 0,
- -2, 53,
- -1, 332,
- 41, 30,
- -2, 0,
- -1, 354,
- 41, 30,
- -2, 0,
- };
- # define YYNPROD 184
- # define YYLAST 4423
- __YYSCLASS yytabelem yyact[]={
- 17, 137, 66, 228, 253, 276, 243, 124, 138, 102,
- 42, 103, 104, 111, 112, 42, 100, 155, 109, 107,
- 307, 108, 185, 110, 100, 214, 100, 100, 100, 42,
- 253, 121, 122, 123, 249, 82, 253, 42, 83, 103,
- 104, 223, 103, 104, 313, 252, 113, 205, 232, 139,
- 311, 41, 22, 43, 53, 42, 41, 22, 43, 142,
- 7, 146, 309, 7, 48, 149, 150, 152, 153, 23,
- 41, 22, 43, 163, 23, 100, 111, 156, 41, 140,
- 43, 109, 85, 273, 217, 143, 110, 105, 23, 51,
- 62, 16, 190, 244, 274, 11, 41, 113, 43, 10,
- 100, 50, 317, 79, 80, 133, 190, 100, 100, 100,
- 100, 100, 100, 100, 9, 268, 334, 148, 323, 190,
- 277, 190, 190, 190, 283, 100, 264, 190, 259, 190,
- 258, 190, 277, 190, 168, 169, 188, 351, 86, 190,
- 11, 315, 100, 219, 350, 349, 100, 221, 156, 24,
- 320, 134, 100, 226, 319, 257, 330, 218, 170, 167,
- 230, 158, 157, 100, 132, 130, 129, 128, 16, 127,
- 126, 125, 100, 120, 100, 119, 100, 100, 100, 100,
- 100, 100, 100, 4, 100, 154, 251, 100, 100, 21,
- 270, 144, 49, 131, 316, 346, 360, 363, 1, 72,
- 20, 100, 199, 39, 233, 224, 100, 234, 100, 100,
- 100, 5, 58, 100, 100, 67, 96, 222, 61, 60,
- 248, 81, 8, 159, 114, 216, 116, 117, 118, 160,
- 2, 0, 100, 100, 100, 100, 163, 0, 163, 163,
- 163, 163, 275, 182, 163, 238, 100, 0, 0, 236,
- 0, 292, 0, 140, 293, 100, 100, 3, 0, 0,
- 0, 0, 0, 166, 6, 0, 140, 6, 47, 0,
- 0, 269, 162, 165, 0, 96, 0, 0, 0, 211,
- 0, 0, 100, 156, 184, 100, 100, 100, 0, 100,
- 0, 100, 308, 0, 0, 0, 100, 0, 100, 100,
- 116, 239, 100, 0, 100, 100, 100, 96, 193, 194,
- 195, 196, 197, 198, 18, 163, 333, 27, 156, 26,
- 112, 44, 202, 204, 0, 206, 340, 332, 341, 0,
- 0, 210, 100, 68, 0, 230, 345, 100, 0, 100,
- 0, 0, 96, 100, 100, 0, 96, 229, 0, 0,
- 0, 355, 96, 156, 0, 358, 0, 230, 359, 0,
- 0, 0, 354, 242, 238, 361, 0, 238, 238, 238,
- 312, 238, 96, 238, 96, 0, 96, 96, 96, 96,
- 96, 96, 96, 112, 96, 0, 18, 96, 96, 27,
- 287, 26, 347, 44, 0, 0, 0, 16, 0, 357,
- 0, 96, 0, 0, 0, 68, 260, 337, 96, 96,
- 96, 299, 300, 96, 96, 0, 0, 0, 0, 238,
- 239, 0, 0, 239, 239, 239, 0, 239, 0, 239,
- 0, 289, 96, 278, 279, 280, 165, 0, 165, 165,
- 165, 165, 296, 0, 165, 0, 96, 291, 0, 0,
- 0, 0, 0, 302, 0, 96, 96, 18, 0, 0,
- 27, 0, 26, 0, 44, 310, 0, 0, 0, 16,
- 0, 0, 339, 0, 0, 239, 68, 0, 0, 0,
- 0, 0, 242, 0, 0, 242, 242, 242, 19, 242,
- 0, 242, 0, 0, 0, 0, 96, 0, 96, 96,
- 0, 0, 96, 335, 96, 96, 96, 0, 281, 0,
- 284, 285, 286, 288, 115, 165, 290, 18, 0, 0,
- 27, 0, 26, 0, 44, 0, 0, 0, 0, 0,
- 75, 0, 96, 0, 0, 0, 68, 242, 0, 96,
- 16, 0, 306, 96, 96, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 164, 42, 28, 55, 56, 57, 73, 69, 59,
- 70, 0, 45, 46, 71, 33, 0, 34, 63, 64,
- 0, 0, 0, 0, 0, 0, 101, 336, 0, 27,
- 0, 26, 0, 77, 78, 37, 0, 0, 0, 0,
- 16, 0, 75, 41, 22, 43, 29, 35, 38, 52,
- 32, 65, 36, 40, 76, 0, 25, 0, 0, 30,
- 31, 23, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 42, 28, 55, 56, 57, 73,
- 69, 59, 70, 0, 45, 46, 71, 33, 0, 34,
- 63, 64, 0, 0, 0, 0, 18, 0, 0, 27,
- 0, 26, 0, 44, 0, 77, 78, 37, 0, 0,
- 0, 0, 0, 75, 0, 41, 22, 43, 29, 35,
- 38, 0, 32, 65, 36, 40, 76, 0, 25, 0,
- 0, 30, 31, 23, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 42, 28, 55, 56, 57,
- 73, 69, 59, 70, 0, 45, 46, 71, 33, 0,
- 34, 63, 64, 0, 164, 0, 164, 164, 164, 164,
- 0, 0, 164, 75, 0, 0, 77, 78, 37, 0,
- 271, 0, 0, 0, 0, 0, 41, 22, 43, 29,
- 35, 38, 0, 32, 65, 36, 40, 76, 0, 25,
- 0, 0, 30, 31, 23, 42, 28, 55, 56, 57,
- 73, 69, 59, 70, 0, 45, 46, 71, 33, 0,
- 34, 63, 64, 18, 0, 0, 27, 0, 26, 0,
- 44, 0, 0, 0, 0, 0, 77, 78, 37, 0,
- 0, 0, 68, 164, 0, 0, 41, 22, 43, 29,
- 35, 38, 0, 32, 65, 36, 40, 76, 0, 25,
- 0, 0, 30, 31, 23, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 42, 28, 0, 0, 0, 0,
- 0, 0, 0, 18, 45, 46, 27, 33, 26, 34,
- 44, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 68, 0, 0, 0, 16, 37, 247, 0,
- 0, 0, 75, 0, 0, 41, 22, 43, 29, 35,
- 38, 0, 32, 0, 36, 40, 0, 0, 99, 0,
- 0, 30, 31, 23, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 18, 42, 28, 27, 0, 26, 73,
- 44, 0, 0, 0, 45, 46, 0, 33, 0, 34,
- 0, 0, 68, 0, 0, 0, 16, 0, 246, 0,
- 0, 0, 0, 0, 0, 77, 78, 37, 0, 0,
- 0, 0, 0, 0, 0, 41, 22, 43, 29, 35,
- 38, 0, 32, 0, 36, 40, 0, 0, 25, 0,
- 0, 30, 31, 23, 0, 0, 0, 0, 0, 0,
- 18, 0, 0, 27, 0, 26, 0, 44, 0, 0,
- 0, 0, 0, 0, 0, 0, 16, 0, 225, 68,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 75,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 42, 28, 55, 56, 57, 73, 69, 59, 70,
- 0, 45, 46, 71, 33, 0, 34, 63, 64, 0,
- 0, 0, 0, 16, 0, 215, 0, 0, 0, 75,
- 0, 0, 77, 78, 37, 0, 0, 0, 0, 0,
- 0, 256, 41, 22, 43, 29, 35, 38, 0, 32,
- 65, 36, 40, 76, 0, 25, 0, 0, 30, 31,
- 23, 42, 28, 55, 56, 57, 73, 69, 59, 70,
- 0, 45, 46, 71, 33, 0, 34, 63, 64, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 75,
- 0, 0, 77, 78, 37, 0, 0, 0, 0, 0,
- 0, 0, 41, 22, 43, 29, 35, 38, 0, 32,
- 65, 36, 40, 76, 0, 25, 0, 0, 30, 31,
- 23, 42, 28, 55, 56, 57, 73, 69, 59, 70,
- 0, 45, 46, 71, 33, 0, 34, 63, 64, 18,
- 0, 0, 27, 0, 26, 0, 44, 189, 191, 0,
- 0, 0, 77, 78, 37, 0, 75, 0, 68, 0,
- 0, 0, 41, 22, 43, 29, 35, 38, 0, 32,
- 65, 36, 40, 76, 0, 25, 0, 0, 30, 31,
- 23, 0, 0, 0, 0, 0, 0, 0, 42, 28,
- 55, 56, 57, 73, 69, 59, 70, 0, 45, 46,
- 71, 33, 235, 34, 63, 64, 18, 0, 0, 27,
- 0, 26, 0, 44, 0, 0, 0, 0, 0, 77,
- 78, 37, 16, 0, 135, 68, 0, 0, 0, 41,
- 22, 43, 29, 35, 38, 0, 32, 65, 36, 40,
- 76, 0, 25, 0, 0, 30, 31, 23, 0, 261,
- 262, 263, 0, 265, 266, 267, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 189, 0,
- 101, 329, 0, 27, 190, 26, 0, 0, 0, 16,
- 294, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 84, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 322, 325, 327, 328, 0, 0,
- 0, 0, 0, 0, 189, 75, 101, 326, 0, 27,
- 190, 26, 0, 0, 95, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 84,
- 0, 0, 0, 0, 0, 0, 0, 42, 28, 55,
- 56, 57, 73, 69, 59, 70, 0, 45, 46, 71,
- 33, 0, 34, 63, 64, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 77, 78,
- 37, 0, 75, 0, 0, 0, 0, 0, 41, 22,
- 43, 29, 35, 38, 0, 32, 65, 36, 40, 76,
- 95, 25, 0, 0, 30, 31, 23, 0, 0, 0,
- 0, 0, 0, 0, 42, 28, 55, 56, 57, 73,
- 69, 59, 70, 0, 45, 46, 71, 33, 0, 34,
- 63, 64, 0, 0, 0, 0, 0, 0, 101, 324,
- 0, 27, 190, 26, 0, 77, 78, 37, 0, 0,
- 0, 0, 0, 0, 0, 41, 22, 43, 29, 35,
- 38, 84, 32, 65, 36, 40, 76, 93, 25, 0,
- 0, 30, 31, 23, 0, 0, 0, 0, 98, 97,
- 0, 87, 88, 89, 90, 91, 92, 94, 42, 28,
- 0, 0, 0, 0, 0, 0, 0, 0, 45, 46,
- 0, 33, 0, 34, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 37, 95, 0, 0, 0, 0, 0, 0, 41,
- 22, 43, 29, 35, 38, 0, 32, 0, 36, 40,
- 0, 0, 99, 93, 0, 30, 31, 23, 101, 0,
- 0, 27, 0, 26, 98, 97, 0, 87, 88, 89,
- 90, 91, 92, 94, 42, 28, 0, 139, 0, 0,
- 0, 84, 0, 0, 45, 46, 0, 33, 0, 34,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 37, 0, 0,
- 0, 0, 0, 0, 0, 41, 22, 43, 29, 35,
- 38, 0, 32, 0, 36, 40, 0, 0, 99, 0,
- 0, 30, 31, 23, 101, 192, 0, 27, 190, 26,
- 0, 0, 95, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 84, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 93, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 98, 97, 0, 87,
- 88, 89, 90, 91, 92, 94, 42, 28, 0, 0,
- 0, 0, 0, 0, 0, 0, 45, 46, 0, 33,
- 0, 34, 0, 0, 0, 0, 0, 0, 95, 0,
- 0, 0, 0, 0, 0, 101, 353, 0, 27, 37,
- 26, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 0, 32, 0, 36, 40, 84, 0,
- 99, 0, 0, 30, 31, 23, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 140, 0, 0, 0, 93, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 98, 97, 0, 87,
- 88, 89, 90, 91, 92, 94, 42, 28, 0, 95,
- 101, 352, 0, 27, 0, 26, 45, 46, 0, 33,
- 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 84, 0, 0, 0, 0, 0, 37,
- 0, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 0, 32, 0, 36, 40, 0, 0,
- 99, 93, 0, 30, 31, 23, 0, 0, 0, 0,
- 0, 0, 98, 97, 0, 87, 88, 89, 90, 91,
- 92, 94, 42, 28, 0, 0, 0, 0, 0, 0,
- 0, 0, 45, 46, 95, 33, 0, 34, 101, 348,
- 0, 27, 0, 26, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 37, 0, 0, 0, 0,
- 0, 84, 0, 41, 22, 43, 29, 35, 38, 0,
- 32, 0, 36, 40, 0, 0, 99, 0, 0, 30,
- 31, 23, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 93, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 98, 97, 0, 87, 88, 89, 90,
- 91, 92, 94, 42, 28, 0, 0, 0, 0, 0,
- 0, 0, 95, 45, 46, 0, 33, 0, 34, 0,
- 101, 0, 0, 27, 0, 26, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 37, 0, 0, 344,
- 0, 0, 0, 84, 41, 22, 43, 29, 35, 38,
- 0, 32, 0, 36, 40, 0, 0, 99, 0, 0,
- 30, 31, 23, 0, 0, 0, 0, 93, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 98, 97,
- 0, 87, 88, 89, 90, 91, 92, 94, 42, 28,
- 0, 0, 0, 0, 0, 0, 0, 0, 45, 46,
- 0, 33, 0, 34, 95, 0, 0, 0, 0, 0,
- 0, 0, 101, 321, 0, 27, 0, 26, 0, 0,
- 0, 37, 0, 0, 0, 0, 0, 0, 0, 41,
- 22, 43, 29, 35, 38, 84, 32, 0, 36, 40,
- 0, 0, 99, 0, 0, 30, 31, 23, 0, 0,
- 0, 0, 0, 0, 0, 93, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 98, 97, 0, 87,
- 88, 89, 90, 91, 92, 94, 42, 28, 0, 0,
- 0, 0, 0, 0, 0, 0, 45, 46, 0, 33,
- 0, 34, 0, 0, 0, 0, 95, 0, 0, 0,
- 101, 318, 0, 27, 0, 26, 0, 0, 0, 37,
- 0, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 84, 32, 0, 36, 40, 0, 0,
- 99, 0, 0, 30, 31, 23, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 93, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 98, 97,
- 0, 87, 88, 89, 90, 91, 92, 94, 42, 28,
- 0, 0, 0, 0, 0, 0, 0, 0, 45, 46,
- 0, 33, 0, 34, 95, 101, 277, 0, 27, 0,
- 26, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 37, 0, 0, 0, 0, 0, 0, 84, 41,
- 22, 43, 29, 35, 38, 0, 32, 0, 36, 40,
- 0, 0, 99, 0, 0, 30, 31, 23, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 93,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 98, 97, 0, 87, 88, 89, 90, 91, 92, 94,
- 42, 28, 0, 0, 0, 0, 0, 0, 0, 95,
- 45, 46, 0, 33, 0, 34, 101, 0, 0, 27,
- 190, 26, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 37, 0, 0, 0, 0, 0, 84,
- 0, 41, 22, 43, 29, 35, 38, 0, 32, 0,
- 36, 40, 0, 0, 99, 0, 0, 30, 31, 23,
- 0, 0, 0, 0, 0, 0, 0, 93, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 98, 97,
- 0, 87, 88, 89, 90, 91, 92, 94, 42, 28,
- 0, 0, 101, 192, 0, 27, 0, 26, 45, 46,
- 95, 33, 0, 34, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 84, 0, 0, 0, 0,
- 0, 37, 0, 0, 0, 0, 0, 0, 0, 41,
- 22, 43, 29, 35, 38, 0, 32, 0, 36, 40,
- 0, 0, 99, 0, 0, 30, 31, 23, 0, 0,
- 0, 0, 93, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 98, 97, 0, 87, 88, 89, 90,
- 91, 92, 94, 42, 28, 0, 95, 0, 0, 0,
- 0, 0, 101, 45, 46, 27, 33, 26, 34, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 250, 0, 0, 0, 0, 84, 37, 0, 0, 0,
- 0, 0, 0, 0, 41, 22, 43, 29, 35, 38,
- 0, 32, 0, 36, 40, 0, 0, 99, 0, 0,
- 30, 31, 23, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 93, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 98, 97, 0, 87, 88, 89,
- 90, 91, 92, 94, 42, 28, 95, 0, 101, 0,
- 0, 27, 0, 26, 45, 46, 0, 33, 0, 34,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 84, 0, 0, 0, 0, 0, 37, 0, 0,
- 0, 0, 0, 0, 0, 41, 22, 43, 29, 35,
- 38, 0, 32, 0, 36, 40, 0, 0, 99, 93,
- 0, 30, 31, 23, 0, 0, 0, 0, 0, 0,
- 98, 97, 0, 87, 88, 89, 90, 91, 92, 94,
- 42, 28, 0, 0, 0, 0, 0, 0, 0, 0,
- 45, 46, 95, 33, 101, 34, 0, 27, 0, 26,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
- 0, 41, 22, 43, 29, 35, 38, 0, 32, 0,
- 36, 40, 0, 0, 99, 0, 0, 30, 31, 23,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 93,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 98, 97, 0, 87, 88, 89, 90, 91, 92, 94,
- 42, 28, 0, 0, 0, 0, 0, 0, 95, 101,
- 45, 46, 27, 33, 26, 34, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 37, 0, 0, 0, 0, 0, 0,
- 0, 41, 22, 43, 29, 35, 38, 0, 32, 0,
- 36, 40, 0, 0, 99, 54, 0, 30, 31, 23,
- 0, 0, 0, 0, 0, 93, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 98, 97, 0, 87,
- 88, 89, 90, 91, 92, 94, 42, 28, 0, 0,
- 0, 0, 0, 95, 0, 0, 45, 46, 0, 33,
- 0, 34, 0, 0, 0, 0, 0, 0, 0, 136,
- 0, 0, 0, 0, 0, 0, 0, 147, 0, 37,
- 0, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 0, 32, 0, 36, 40, 0, 0,
- 99, 0, 0, 30, 31, 23, 0, 0, 0, 0,
- 0, 93, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 98, 0, 0, 87, 88, 89, 90, 91,
- 92, 94, 42, 28, 0, 0, 0, 0, 0, 0,
- 0, 0, 45, 46, 0, 33, 0, 34, 0, 136,
- 18, 0, 0, 27, 0, 26, 0, 44, 0, 0,
- 220, 0, 0, 0, 136, 37, 0, 0, 0, 0,
- 227, 0, 0, 41, 22, 43, 29, 35, 38, 0,
- 32, 0, 36, 40, 136, 136, 99, 0, 0, 30,
- 31, 23, 0, 0, 0, 0, 93, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 87, 88, 89, 90, 91, 92, 94, 42, 28, 0,
- 0, 0, 0, 0, 0, 0, 0, 45, 46, 74,
- 33, 0, 34, 16, 15, 0, 0, 0, 272, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 106, 0,
- 37, 0, 0, 0, 0, 0, 0, 0, 41, 22,
- 43, 29, 35, 38, 0, 32, 0, 36, 40, 0,
- 0, 99, 0, 0, 30, 31, 23, 0, 0, 15,
- 0, 15, 0, 0, 0, 136, 141, 101, 0, 145,
- 27, 0, 26, 0, 0, 151, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 314, 0, 0, 0, 0,
- 237, 0, 0, 0, 171, 173, 175, 176, 177, 178,
- 179, 180, 181, 183, 0, 0, 0, 0, 0, 0,
- 0, 186, 187, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 200, 0, 0, 0, 0, 0, 200,
- 200, 0, 0, 0, 0, 207, 208, 209, 200, 212,
- 213, 101, 356, 136, 27, 0, 26, 0, 0, 0,
- 0, 12, 13, 0, 0, 0, 362, 0, 0, 364,
- 101, 0, 0, 27, 237, 26, 0, 0, 231, 0,
- 0, 106, 0, 0, 0, 0, 0, 245, 42, 28,
- 0, 0, 0, 0, 0, 0, 0, 14, 45, 46,
- 0, 33, 0, 34, 0, 0, 0, 0, 0, 254,
- 0, 255, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 37, 0, 0, 0, 0, 0, 0, 0, 41,
- 22, 43, 29, 35, 38, 0, 32, 0, 36, 40,
- 0, 0, 25, 0, 0, 30, 31, 23, 18, 0,
- 0, 27, 0, 26, 0, 44, 0, 0, 0, 0,
- 0, 0, 0, 0, 200, 0, 0, 139, 0, 0,
- 295, 0, 0, 0, 0, 0, 297, 0, 0, 0,
- 0, 298, 301, 0, 0, 303, 304, 305, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 18, 0, 106, 27, 240, 26, 0, 44, 0, 0,
- 0, 0, 0, 0, 0, 98, 97, 0, 0, 0,
- 0, 0, 0, 0, 241, 42, 28, 0, 331, 0,
- 0, 0, 0, 0, 0, 45, 46, 0, 33, 0,
- 34, 0, 338, 0, 0, 0, 0, 0, 342, 0,
- 343, 0, 0, 0, 0, 0, 0, 0, 37, 0,
- 0, 0, 0, 0, 0, 0, 41, 22, 43, 29,
- 35, 38, 0, 32, 0, 36, 40, 0, 240, 99,
- 0, 0, 30, 31, 23, 0, 0, 0, 101, 98,
- 97, 27, 0, 26, 0, 0, 0, 240, 241, 42,
- 28, 0, 0, 0, 0, 0, 0, 0, 98, 45,
- 46, 0, 33, 0, 34, 0, 0, 241, 42, 28,
- 0, 0, 0, 0, 0, 0, 0, 0, 45, 46,
- 0, 33, 37, 34, 0, 0, 0, 0, 0, 0,
- 41, 22, 43, 29, 35, 38, 0, 32, 0, 36,
- 40, 37, 0, 99, 0, 0, 30, 31, 23, 41,
- 22, 43, 29, 35, 38, 0, 32, 0, 36, 40,
- 0, 140, 99, 0, 0, 30, 31, 23, 282, 0,
- 0, 27, 0, 26, 0, 44, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 42, 28, 0, 0,
- 0, 0, 0, 0, 0, 0, 45, 46, 0, 33,
- 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 253, 0, 0, 0, 0, 0, 37,
- 0, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 0, 32, 0, 36, 40, 42, 28,
- 25, 0, 0, 30, 31, 23, 0, 0, 45, 46,
- 0, 33, 0, 34, 282, 0, 0, 27, 0, 26,
- 0, 44, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 37, 0, 0, 0, 0, 0, 0, 0, 41,
- 22, 43, 29, 35, 38, 0, 32, 0, 36, 40,
- 0, 0, 25, 0, 0, 30, 31, 23, 0, 0,
- 0, 0, 0, 0, 0, 240, 282, 0, 0, 27,
- 0, 26, 0, 44, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 241, 42, 28, 0, 0,
- 0, 0, 0, 0, 0, 0, 45, 46, 0, 33,
- 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 37,
- 0, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 0, 32, 0, 36, 40, 0, 0,
- 99, 0, 0, 30, 31, 23, 0, 18, 203, 0,
- 27, 174, 26, 0, 44, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 18, 201, 0, 27,
- 0, 26, 0, 44, 0, 0, 42, 28, 0, 0,
- 0, 0, 0, 0, 0, 0, 45, 46, 0, 33,
- 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 37,
- 0, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 0, 32, 0, 36, 40, 0, 0,
- 25, 0, 0, 30, 31, 23, 0, 172, 18, 0,
- 0, 27, 0, 26, 0, 44, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 42, 28, 0, 0, 0, 0, 0, 0,
- 0, 0, 45, 46, 0, 33, 0, 34, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 253,
- 0, 0, 0, 18, 0, 37, 27, 0, 26, 0,
- 44, 0, 0, 41, 22, 43, 29, 35, 38, 0,
- 32, 0, 36, 40, 42, 28, 25, 0, 0, 30,
- 31, 23, 0, 0, 45, 46, 0, 33, 0, 34,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 18, 0, 37, 27, 0,
- 26, 0, 44, 0, 0, 41, 22, 43, 29, 35,
- 38, 0, 32, 0, 36, 40, 0, 0, 25, 0,
- 0, 30, 31, 23, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 42, 28, 282, 0, 0,
- 27, 0, 26, 0, 44, 45, 46, 0, 33, 0,
- 34, 0, 0, 0, 42, 28, 161, 0, 0, 27,
- 0, 26, 0, 44, 45, 46, 0, 33, 37, 34,
- 0, 0, 0, 0, 0, 0, 41, 22, 43, 29,
- 35, 38, 0, 32, 0, 36, 40, 37, 0, 25,
- 0, 0, 30, 31, 23, 41, 22, 43, 29, 35,
- 38, 174, 32, 0, 36, 40, 0, 0, 25, 0,
- 0, 30, 31, 23, 0, 0, 101, 0, 0, 27,
- 0, 26, 0, 44, 0, 0, 42, 28, 0, 0,
- 0, 0, 0, 0, 0, 101, 45, 46, 27, 33,
- 26, 34, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 172, 0, 0, 37,
- 0, 0, 0, 0, 0, 0, 0, 41, 22, 43,
- 29, 35, 38, 0, 32, 0, 36, 40, 0, 0,
- 25, 42, 28, 30, 31, 23, 0, 0, 0, 0,
- 0, 45, 46, 0, 33, 0, 34, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 37, 0, 0, 0, 0, 0,
- 0, 0, 41, 22, 43, 29, 35, 38, 0, 32,
- 0, 36, 40, 42, 28, 25, 0, 0, 30, 31,
- 23, 0, 0, 45, 46, 0, 33, 0, 34, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 37, 0, 0, 0,
- 0, 0, 0, 0, 41, 22, 43, 29, 35, 38,
- 0, 32, 0, 36, 40, 42, 28, 25, 0, 0,
- 30, 31, 23, 0, 0, 45, 46, 0, 33, 0,
- 34, 0, 0, 0, 42, 28, 0, 0, 0, 0,
- 0, 0, 0, 0, 45, 46, 0, 33, 37, 34,
- 0, 0, 0, 0, 0, 0, 41, 22, 43, 29,
- 35, 38, 0, 32, 0, 36, 40, 37, 0, 25,
- 0, 0, 30, 31, 23, 41, 22, 43, 29, 35,
- 38, 0, 32, 0, 36, 40, 0, 0, 25, 0,
- 0, 30, 31, 23, 42, 28, 0, 0, 0, 0,
- 0, 0, 0, 0, 45, 46, 0, 33, 0, 34,
- 0, 0, 0, 42, 28, 0, 0, 0, 0, 0,
- 0, 0, 0, 45, 46, 0, 33, 37, 34, 0,
- 0, 0, 0, 0, 0, 41, 22, 43, 29, 35,
- 38, 0, 32, 0, 36, 40, 37, 0, 25, 0,
- 0, 30, 31, 23, 41, 22, 43, 29, 35, 38,
- 0, 0, 0, 36, 40, 0, 0, 99, 0, 0,
- 30, 31, 23 };
- __YYSCLASS yytabelem yypact[]={
- 1, -3000, -3000, -3000, 2970, 5, -3000, -3000, 4, -3000,
- 45, 346, -32, -32, -294, 2618, -3000, -303, 3925, -3000,
- -24, 6, -3000, 546, -3000, 4056, 546, 546, 135, 133,
- -273, -273, -278, 131, 130, -3000, 129, 127, -3000, 126,
- 125, -3000, -3000, -3000, -3000, -3000, -3000, -3000, -3000, 2970,
- 346, 3925, -3000, 1129, -3000, -10, 3925, -10, -178, 3278,
- -3000, 1196, 346, -10, -10, 3278, -10, -3000, -184, -3000,
- 122, 121, 3996, -251, 2618, -3000, 119, -3000, -3000, 346,
- 346, 118, -3000, -3000, 3925, 3873, 3818, 3925, 3925, 3925,
- 3925, 3925, 3925, 3925, -251, -314, -24, -3000, -3000, 546,
- -334, 3925, 3925, -3000, -3000, 95, 1654, 546, 546, 546,
- 546, 546, 546, 3925, -3000, -3000, -330, -330, -330, 3746,
- 3727, -3000, -3000, -238, 546, 3925, 3925, 3925, 3925, 3925,
- 3925, -310, -3000, 930, -32, -3000, -3000, -3000, -179, -184,
- -3000, 1578, -3000, -3000, 1196, 1578, -3000, -281, 863, -3000,
- -3000, 1578, -3000, -3000, 1196, -3000, -179, 616, 3925, -76,
- 78, 3925, 3181, -306, -3000, -24, 2, 3925, 803, 743,
- -295, 2532, -3000, 2704, -3000, 2789, 4075, 4075, 4075, 4075,
- 4075, 4075, -3000, 4075, -3000, -273, 2442, 2618, -242, 3330,
- -3000, 3330, -3000, 39, 39, -330, -330, -330, -330, 62,
- 2618, -3000, 89, -3000, 87, 546, -24, 2366, 2366, 2366,
- 85, 78, 2366, 2366, 68, -3000, 346, -3000, -3000, -3000,
- -3000, -3000, 477, -3000, -180, -3000, -3000, -3000, 35, -45,
- -3000, 2275, 546, 546, 546, 3646, 83, 3977, 3594, 3508,
- 3977, -251, -24, 3977, 3925, 2275, -3000, -3000, 79, -3000,
- 3925, -3000, -251, -3000, 2618, 2618, 3330, -3000, -3000, -3000,
- -24, 3330, 3330, -233, -3000, 3330, 3330, 3330, -3000, 417,
- -320, -3000, -3000, -3000, 3, -251, -213, -3000, -24, -24,
- -24, 3181, 3925, -243, 3107, 3200, 3418, -3000, 4075, -3000,
- 3181, 48, -213, -213, -227, 2618, -3000, 2618, 2190, 113,
- 109, 2102, 77, 1468, 1346, 1270, -3000, 116, 3925, -184,
- 91, -3000, 75, -251, 3977, -3000, -32, -3000, -3000, -3000,
- -3000, -3000, 3330, -3000, -3000, -259, -3000, -259, 3330, -3000,
- 3925, 2010, 616, -213, -243, -3000, 3181, 346, 1918, 104,
- 103, 96, 1830, 1745, -184, 91, 1196, 274, -3000, -3000,
- -3000, -3000, -3000, -10, 616, -213, -3000, -3000, -3000, 91,
- 1196, -213, -3000, 1196, -3000 };
- __YYSCLASS yytabelem yypgo[]={
- 0, 230, 3089, 272, 87, 229, 202, 223, 200, 488,
- 99, 114, 222, 149, 2, 3, 2875, 54, 0, 189,
- 221, 220, 219, 218, 217, 215, 212, 1, 211, 183,
- 90, 205, 5, 1071, 8, 17, 138, 82, 203, 199,
- 198, 197, 196, 195, 194, 193, 191, 190, 185 };
- __YYSCLASS yytabelem yyr1[]={
- 0, 40, 40, 36, 36, 37, 37, 33, 33, 26,
- 26, 24, 24, 41, 22, 42, 22, 43, 22, 20,
- 20, 23, 30, 30, 34, 34, 35, 35, 29, 29,
- 15, 15, 1, 1, 10, 11, 11, 11, 11, 11,
- 11, 11, 44, 11, 12, 12, 6, 6, 3, 3,
- 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 4, 4,
- 5, 5, 7, 7, 7, 39, 39, 28, 28, 28,
- 28, 31, 31, 9, 9, 45, 13, 32, 32, 14,
- 14, 14, 14, 14, 14, 14, 14, 27, 27, 16,
- 16, 16, 46, 47, 16, 16, 16, 16, 16, 16,
- 16, 16, 16, 16, 16, 16, 48, 16, 16, 17,
- 17, 38, 38, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
- 8, 8, 8, 18, 18, 18, 18, 21, 21, 21,
- 19, 19, 19, 25 };
- __YYSCLASS yytabelem yyr2[]={
- 0, 3, 3, 2, 4, 2, 4, 2, 4, 2,
- 4, 2, 4, 1, 25, 1, 21, 1, 17, 3,
- 3, 9, 2, 4, 2, 4, 1, 2, 1, 2,
- 1, 2, 3, 7, 3, 3, 9, 7, 13, 7,
- 9, 9, 1, 19, 2, 7, 2, 7, 7, 11,
- 7, 7, 7, 7, 7, 11, 5, 2, 2, 7,
- 11, 7, 7, 7, 7, 7, 7, 7, 7, 7,
- 7, 7, 11, 9, 7, 5, 2, 2, 7, 7,
- 2, 7, 1, 2, 7, 2, 2, 2, 2, 4,
- 4, 2, 4, 3, 5, 1, 9, 2, 4, 9,
- 9, 9, 5, 11, 5, 3, 3, 2, 4, 5,
- 7, 5, 1, 1, 19, 7, 5, 2, 9, 5,
- 7, 5, 5, 7, 5, 4, 1, 7, 5, 2,
- 5, 2, 2, 7, 7, 7, 7, 7, 7, 5,
- 5, 5, 7, 9, 3, 7, 9, 5, 5, 5,
- 5, 9, 7, 5, 3, 13, 13, 7, 13, 13,
- 3, 17, 17, 13, 9, 3, 13, 13, 17, 17,
- 17, 13, 2, 2, 9, 3, 5, 1, 3, 7,
- 3, 3, 3, 9 };
- __YYSCLASS yytabelem yychk[]={
- -3000, -40, -1, 256, -29, -28, 263, 59, -12, -11,
- -10, -30, 261, 262, 297, -2, 123, -18, 40, -9,
- -8, -19, 330, 347, -13, 342, 45, 43, 289, 332,
- 345, 346, 336, 301, 303, 333, 338, 321, 334, -38,
- 339, 329, 288, 331, 47, 298, 299, 263, 59, -29,
- -30, 44, 263, -17, -16, 290, 291, 292, -26, 295,
- -22, -23, -30, 304, 305, 337, -14, -25, 59, 294,
- 296, 300, -39, 293, -2, 256, 340, 319, 320, -30,
- -30, -20, 329, 332, 63, -37, -36, 281, 282, 283,
- 284, 285, 286, 267, 287, 124, -8, 279, 278, 342,
- -18, 40, 312, 345, 346, -4, -2, 43, 45, 42,
- 47, 37, 344, 91, -8, -9, -8, -8, -8, 40,
- 40, -18, -18, -18, 285, 40, 40, 40, 40, 40,
- 40, -45, -11, -17, -10, 125, -16, -27, -34, 59,
- 263, -2, -27, 263, -46, -2, -27, -16, -17, -27,
- -27, -2, -27, -27, -48, -35, -34, 40, 40, -7,
- -5, 40, -3, -18, -9, -8, -19, 40, -17, -17,
- 40, -2, 263, -2, 263, -2, -2, -2, -2, -2,
- -2, -2, -13, -2, -19, 336, -2, -2, 41, -33,
- 44, -33, 41, -8, -8, -8, -8, -8, -8, -6,
- -2, 41, -6, 41, -6, 285, -8, -2, -2, -2,
- -6, -13, -2, -2, 335, 125, -30, 263, -35, -27,
- -16, -27, -24, 322, -31, 125, -27, -16, -15, -19,
- -14, -2, 124, 280, 283, -33, -4, 63, -37, -36,
- 267, 287, -8, 312, 91, -2, 125, 125, -21, 329,
- 58, -18, 287, 263, -2, -2, -33, 93, 41, 41,
- -8, -33, -33, -33, 41, -33, -33, -33, 47, -17,
- -47, 263, -16, 263, 59, 287, -32, 41, -8, -8,
- -8, -3, 40, 41, -3, -3, -3, -13, -3, -19,
- -3, -6, -32, -32, -33, -2, -19, -2, -2, -13,
- -13, -2, -19, -2, -2, -2, 125, 340, -35, 59,
- -19, 263, -4, 287, 58, 93, -44, 329, 41, 41,
- 41, 41, -33, 41, 41, -33, 41, -33, -33, 41,
- 40, -2, -35, -32, 41, -19, -3, -30, -2, -13,
- -18, -18, -2, -2, 59, -15, -43, -17, 41, 41,
- 41, 41, 41, 41, -35, -32, -16, 125, -27, -15,
- -42, -32, -16, -41, -16 };
- __YYSCLASS yytabelem yydef[]={
- -2, -2, 1, 2, 32, 29, 87, 88, 28, 44,
- 35, 0, 0, 0, 0, 34, 22, 172, 0, 76,
- 77, 173, 175, 0, 93, 0, 0, 0, 144, 0,
- 0, 0, 154, 0, 0, 160, 0, 0, 165, 0,
- 0, 180, 181, 182, 95, 131, 132, 89, 90, 33,
- 0, 0, 23, 0, 129, 0, 0, 0, 112, 0,
- 117, 0, 0, 0, 0, 0, 0, 126, 26, 9,
- 0, 0, 82, 0, 105, 106, 0, 85, 86, 0,
- 0, 0, 19, 20, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 75, 5, 3, 0,
- 172, 0, 0, 149, 150, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 176, 94, 141, 139, 140, 0,
- 0, 147, 148, 153, 0, 0, 0, 0, 0, 0,
- 0, 0, 45, 0, 37, 39, 130, 109, 107, 26,
- 24, 0, 111, 10, 0, 0, 116, 119, 0, 121,
- 122, 0, 124, 125, 0, 128, 27, -2, 0, 102,
- 83, 0, 80, 172, 57, 58, 104, 0, 0, 0,
- 177, 0, 6, 61, 4, 62, -2, -2, -2, -2,
- -2, -2, 69, -2, 71, 74, 0, 59, 0, 0,
- 7, 0, 157, 133, 134, 135, 136, 137, 138, 0,
- 46, 142, 0, 145, 0, 0, 152, 0, 0, 0,
- 0, 93, 0, 0, 0, 36, 0, 25, 108, 110,
- 113, 115, 0, 11, 120, 91, 123, 127, 0, 173,
- 31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 56, 0, 0, 0, 40, 41, 0, 178,
- 0, 73, 0, 8, 79, 78, 0, 174, 143, 146,
- 151, 0, 0, 0, 164, 0, 0, 0, 96, 0,
- 0, 12, 118, 92, 26, 0, 21, 97, 99, 100,
- 101, 81, 0, 84, 0, 50, 51, 52, -2, 54,
- 48, 0, 183, 42, 0, 60, 72, 47, 0, 93,
- 93, 0, 0, 0, 0, 0, 38, 0, 0, 26,
- 0, 98, 0, 0, 0, 103, 0, 179, 155, 156,
- 158, 159, 0, 163, 166, 0, 167, 0, 0, 171,
- 0, 0, -2, 17, 0, 55, 49, 0, 0, 93,
- 0, 0, 0, 0, 26, 0, 0, 0, 161, 162,
- 168, 169, 170, 0, -2, 15, 18, 43, 114, 0,
- 0, 13, 16, 0, 14 };
- typedef struct { char *t_name; int t_val; } yytoktype;
- #ifndef YYDEBUG
- # define YYDEBUG 0 /* don't allow debugging */
- #endif
- #if YYDEBUG
- __YYSCLASS yytoktype yytoks[] =
- {
- "FIRSTTOKEN", 257,
- "PROGRAM", 258,
- "PASTAT", 259,
- "PASTAT2", 260,
- "XBEGIN", 261,
- "XEND", 262,
- "NL", 263,
- ",", 44,
- "{", 123,
- "(", 40,
- "|", 124,
- ";", 59,
- "/", 47,
- ")", 41,
- "}", 125,
- "[", 91,
- "]", 93,
- "ARRAY", 264,
- "MATCH", 265,
- "NOTMATCH", 266,
- "MATCHOP", 267,
- "FINAL", 268,
- "DOT", 269,
- "ALL", 270,
- "CCL", 271,
- "NCCL", 272,
- "CHAR", 273,
- "OR", 274,
- "STAR", 275,
- "QUEST", 276,
- "PLUS", 277,
- "AND", 278,
- "BOR", 279,
- "APPEND", 280,
- "EQ", 281,
- "GE", 282,
- "GT", 283,
- "LE", 284,
- "LT", 285,
- "NE", 286,
- "IN", 287,
- "ARG", 288,
- "BLTIN", 289,
- "BREAK", 290,
- "CLOSE", 291,
- "CONTINUE", 292,
- "DELETE", 293,
- "DO", 294,
- "EXIT", 295,
- "FOR", 296,
- "FUNC", 297,
- "SUB", 298,
- "GSUB", 299,
- "IF", 300,
- "INDEX", 301,
- "LSUBSTR", 302,
- "MATCHFCN", 303,
- "NEXT", 304,
- "NEXTFILE", 305,
- "ADD", 306,
- "MINUS", 307,
- "MULT", 308,
- "DIVIDE", 309,
- "MOD", 310,
- "ASSIGN", 311,
- "ASGNOP", 312,
- "ADDEQ", 313,
- "SUBEQ", 314,
- "MULTEQ", 315,
- "DIVEQ", 316,
- "MODEQ", 317,
- "POWEQ", 318,
- "PRINT", 319,
- "PRINTF", 320,
- "SPRINTF", 321,
- "ELSE", 322,
- "INTEST", 323,
- "CONDEXPR", 324,
- "POSTINCR", 325,
- "PREINCR", 326,
- "POSTDECR", 327,
- "PREDECR", 328,
- "VAR", 329,
- "IVAR", 330,
- "VARNF", 331,
- "CALL", 332,
- "NUMBER", 333,
- "STRING", 334,
- "REGEXPR", 335,
- "?", 63,
- ":", 58,
- "GETLINE", 336,
- "RETURN", 337,
- "SPLIT", 338,
- "SUBSTR", 339,
- "WHILE", 340,
- "CAT", 341,
- "+", 43,
- "-", 45,
- "*", 42,
- "%", 37,
- "NOT", 342,
- "UMINUS", 343,
- "POWER", 344,
- "DECR", 345,
- "INCR", 346,
- "INDIRECT", 347,
- "LASTTOKEN", 348,
- "-unknown-", -1 /* ends search */
- };
- __YYSCLASS char * yyreds[] =
- {
- "-no such reduction-",
- "program : pas",
- "program : error",
- "and : AND",
- "and : and NL",
- "bor : BOR",
- "bor : bor NL",
- "comma : ','",
- "comma : comma NL",
- "do : DO",
- "do : do NL",
- "else : ELSE",
- "else : else NL",
- "for : FOR '(' opt_simple_stmt ';' opt_nl pattern ';' opt_nl opt_simple_stmt rparen",
- "for : FOR '(' opt_simple_stmt ';' opt_nl pattern ';' opt_nl opt_simple_stmt rparen stmt",
- "for : FOR '(' opt_simple_stmt ';' ';' opt_nl opt_simple_stmt rparen",
- "for : FOR '(' opt_simple_stmt ';' ';' opt_nl opt_simple_stmt rparen stmt",
- "for : FOR '(' varname IN varname rparen",
- "for : FOR '(' varname IN varname …
Large files files are truncated, but you can click here to view the full file