From 409456f581f192253b4f07effdd6acb304b790fd Mon Sep 17 00:00:00 2001 From: Damian Gryski Date: Tue, 23 Oct 2012 17:02:19 +0200 Subject: Regenerate lex/yacc files --- parser.gen.c | 1422 ++++++++++++++++++++++++++++------------------------------ 1 file changed, 675 insertions(+), 747 deletions(-) (limited to 'parser.gen.c') diff --git a/parser.gen.c b/parser.gen.c index 346a94b9..79213801 100644 --- a/parser.gen.c +++ b/parser.gen.c @@ -1,8 +1,8 @@ -/* A Bison parser, made by GNU Bison 2.5. */ +/* A Bison parser, made by GNU Bison 2.6.2. */ /* Bison implementation for Yacc-like parsers in C - Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -44,7 +44,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.5" +#define YYBISON_VERSION "2.6.2" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -58,28 +58,30 @@ /* Pull parsers. */ #define YYPULL 1 -/* Using locations. */ -#define YYLSP_NEEDED 1 /* Copy the first part of user declarations. */ - -/* Line 268 of yacc.c */ +/* Line 336 of yacc.c */ #line 1 "parser.y" #include #include #include "compile.h" +typedef void* yyscan_t; -/* Line 268 of yacc.c */ -#line 78 "parser.gen.c" -/* Enabling traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif +/* Line 336 of yacc.c */ +#line 77 "parser.gen.c" + +# ifndef YY_NULL +# if defined __cplusplus && 201103L <= __cplusplus +# define YY_NULL nullptr +# else +# define YY_NULL 0 +# endif +# endif /* Enabling verbose error messages. */ #ifdef YYERROR_VERBOSE @@ -89,15 +91,20 @@ # define YYERROR_VERBOSE 1 #endif -/* Enabling the token table. */ -#ifndef YYTOKEN_TABLE -# define YYTOKEN_TABLE 0 +/* In a future release of Bison, this section will be replaced + by #include "parser.gen.h". */ +#ifndef YY_PARSER_GEN_H +# define YY_PARSER_GEN_H +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +#if YYDEBUG +extern int yydebug; #endif - /* "%code requires" blocks. */ - -/* Line 288 of yacc.c */ -#line 6 "parser.y" +/* Line 350 of yacc.c */ +#line 9 "parser.y" #include "locfile.h" #define YYLTYPE location @@ -113,9 +120,8 @@ } while (0) - -/* Line 288 of yacc.c */ -#line 119 "parser.gen.c" +/* Line 350 of yacc.c */ +#line 125 "parser.gen.c" /* Tokens. */ #ifndef YYTOKENTYPE @@ -127,48 +133,46 @@ IDENT = 259, LITERAL = 260, EQ = 261, - DEFINEDOR = 262, - AS = 263, - DEF = 264, - IF = 265, - THEN = 266, - ELSE = 267, - ELSE_IF = 268, - END = 269, - AND = 270, - OR = 271, - SETPIPE = 272, - SETPLUS = 273, - SETMINUS = 274, - SETMULT = 275, - SETDIV = 276, - SETDEFINEDOR = 277, - LESSEQ = 278, - GREATEREQ = 279, - QQSTRING_START = 280, - QQSTRING_TEXT = 281, - QQSTRING_INTERP_START = 282, - QQSTRING_INTERP_END = 283, - QQSTRING_END = 284 + NEQ = 262, + DEFINEDOR = 263, + AS = 264, + DEF = 265, + IF = 266, + THEN = 267, + ELSE = 268, + ELSE_IF = 269, + END = 270, + AND = 271, + OR = 272, + SETPIPE = 273, + SETPLUS = 274, + SETMINUS = 275, + SETMULT = 276, + SETDIV = 277, + SETDEFINEDOR = 278, + LESSEQ = 279, + GREATEREQ = 280, + QQSTRING_START = 281, + QQSTRING_TEXT = 282, + QQSTRING_INTERP_START = 283, + QQSTRING_INTERP_END = 284, + QQSTRING_END = 285 }; #endif - #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE { - -/* Line 293 of yacc.c */ -#line 24 "parser.y" +/* Line 350 of yacc.c */ +#line 27 "parser.y" jv literal; block blk; - -/* Line 293 of yacc.c */ -#line 172 "parser.gen.c" +/* Line 350 of yacc.c */ +#line 176 "parser.gen.c" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -189,10 +193,25 @@ typedef struct YYLTYPE #endif -/* Copy the second part of user declarations. */ +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (block* answer, int* errors, struct locfile* locations, yyscan_t lexer); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ + +#endif /* !YY_PARSER_GEN_H */ -/* Line 343 of yacc.c */ -#line 85 "parser.y" +/* Copy the second part of user declarations. */ +/* Line 353 of yacc.c */ +#line 89 "parser.y" #include "lexer.gen.h" #define FAIL(loc, msg) \ @@ -250,6 +269,7 @@ static block gen_binop(block a, block b, int op) { case '*': funcname = "_multiply"; break; case '/': funcname = "_divide"; break; case EQ: funcname = "_equal"; break; + case NEQ: funcname = "_notequal"; break; case '<': funcname = "_less"; break; case '>': funcname = "_greater"; break; case LESSEQ: funcname = "_lesseq"; break; @@ -279,9 +299,8 @@ static block gen_update(block a, block op, int optype) { } - -/* Line 343 of yacc.c */ -#line 285 "parser.gen.c" +/* Line 353 of yacc.c */ +#line 304 "parser.gen.c" #ifdef short # undef short @@ -387,6 +406,7 @@ YYID (yyi) # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) # include /* INFRINGES ON USER NAME SPACE */ + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ # ifndef EXIT_SUCCESS # define EXIT_SUCCESS 0 # endif @@ -480,20 +500,20 @@ union yyalloc #endif #if defined YYCOPY_NEEDED && YYCOPY_NEEDED -/* Copy COUNT objects from FROM to TO. The source and destination do +/* Copy COUNT objects from SRC to DST. The source and destination do not overlap. */ # ifndef YYCOPY # if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) # else -# define YYCOPY(To, From, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ while (YYID (0)) # endif # endif @@ -502,20 +522,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 35 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 808 +#define YYLAST 831 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 49 +#define YYNTOKENS 50 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 12 /* YYNRULES -- Number of rules. */ -#define YYNRULES 68 +#define YYNRULES 69 /* YYNRULES -- Number of states. */ -#define YYNSTATES 147 +#define YYNSTATES 149 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 284 +#define YYMAXUTOK 285 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -526,16 +546,16 @@ static const yytype_uint8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 40, 2, 2, 2, - 42, 43, 38, 36, 32, 37, 44, 39, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 41, 30, - 34, 33, 35, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 41, 2, 2, 2, + 43, 44, 39, 37, 33, 38, 45, 40, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 42, 31, + 35, 34, 36, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 45, 2, 46, 2, 2, 2, 2, 2, 2, + 2, 46, 2, 47, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 47, 31, 48, 2, 2, 2, 2, + 2, 2, 2, 48, 32, 49, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -551,74 +571,75 @@ static const yytype_uint8 yytranslate[] = 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29 + 25, 26, 27, 28, 29, 30 }; #if YYDEBUG /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in YYRHS. */ -static const yytype_uint8 yyprhs[] = +static const yytype_uint16 yyprhs[] = { 0, 0, 3, 5, 7, 8, 11, 14, 21, 27, 31, 35, 39, 43, 47, 51, 55, 59, 63, 67, 71, 75, 79, 83, 87, 91, 95, 99, 103, 107, - 111, 115, 117, 119, 123, 129, 138, 139, 142, 147, - 153, 157, 161, 163, 165, 169, 172, 177, 181, 183, - 187, 191, 194, 198, 201, 203, 208, 212, 216, 221, - 225, 226, 228, 232, 236, 240, 244, 246, 252 + 111, 115, 119, 121, 123, 127, 133, 142, 143, 146, + 151, 157, 161, 165, 167, 169, 173, 176, 181, 185, + 187, 191, 195, 198, 202, 205, 207, 212, 216, 220, + 225, 229, 230, 232, 236, 240, 244, 248, 250, 256 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int8 yyrhs[] = { - 50, 0, -1, 52, -1, 51, -1, -1, 54, 51, - -1, 54, 52, -1, 58, 8, 40, 4, 31, 52, - -1, 10, 52, 11, 52, 56, -1, 10, 52, 1, - -1, 52, 33, 52, -1, 52, 16, 52, -1, 52, - 15, 52, -1, 52, 7, 52, -1, 52, 22, 52, - -1, 52, 17, 52, -1, 52, 31, 52, -1, 52, - 32, 52, -1, 52, 36, 52, -1, 52, 18, 52, - -1, 52, 37, 52, -1, 52, 19, 52, -1, 52, - 38, 52, -1, 52, 20, 52, -1, 52, 39, 52, - -1, 52, 21, 52, -1, 52, 6, 52, -1, 52, - 34, 52, -1, 52, 35, 52, -1, 52, 23, 52, - -1, 52, 24, 52, -1, 53, -1, 58, -1, 25, - 55, 29, -1, 9, 4, 41, 52, 30, -1, 9, - 4, 42, 4, 43, 41, 52, 30, -1, -1, 55, - 26, -1, 55, 27, 52, 28, -1, 13, 52, 11, - 52, 56, -1, 12, 52, 14, -1, 57, 31, 57, - -1, 58, -1, 44, -1, 58, 44, 4, -1, 44, - 4, -1, 58, 45, 52, 46, -1, 58, 45, 46, - -1, 5, -1, 42, 52, 43, -1, 45, 52, 46, - -1, 45, 46, -1, 47, 59, 48, -1, 40, 4, - -1, 4, -1, 4, 42, 52, 43, -1, 42, 1, - 43, -1, 45, 1, 46, -1, 58, 45, 1, 46, - -1, 47, 1, 48, -1, -1, 60, -1, 60, 32, - 59, -1, 1, 32, 59, -1, 4, 41, 57, -1, - 53, 41, 57, -1, 4, -1, 42, 52, 43, 41, - 57, -1, 42, 1, 43, 41, 57, -1 + 51, 0, -1, 53, -1, 52, -1, -1, 55, 52, + -1, 55, 53, -1, 59, 9, 41, 4, 32, 53, + -1, 11, 53, 12, 53, 57, -1, 11, 53, 1, + -1, 53, 34, 53, -1, 53, 17, 53, -1, 53, + 16, 53, -1, 53, 8, 53, -1, 53, 23, 53, + -1, 53, 18, 53, -1, 53, 32, 53, -1, 53, + 33, 53, -1, 53, 37, 53, -1, 53, 19, 53, + -1, 53, 38, 53, -1, 53, 20, 53, -1, 53, + 39, 53, -1, 53, 21, 53, -1, 53, 40, 53, + -1, 53, 22, 53, -1, 53, 6, 53, -1, 53, + 7, 53, -1, 53, 35, 53, -1, 53, 36, 53, + -1, 53, 24, 53, -1, 53, 25, 53, -1, 54, + -1, 59, -1, 26, 56, 30, -1, 10, 4, 42, + 53, 31, -1, 10, 4, 43, 4, 44, 42, 53, + 31, -1, -1, 56, 27, -1, 56, 28, 53, 29, + -1, 14, 53, 12, 53, 57, -1, 13, 53, 15, + -1, 58, 32, 58, -1, 59, -1, 45, -1, 59, + 45, 4, -1, 45, 4, -1, 59, 46, 53, 47, + -1, 59, 46, 47, -1, 5, -1, 43, 53, 44, + -1, 46, 53, 47, -1, 46, 47, -1, 48, 60, + 49, -1, 41, 4, -1, 4, -1, 4, 43, 53, + 44, -1, 43, 1, 44, -1, 46, 1, 47, -1, + 59, 46, 1, 47, -1, 48, 1, 49, -1, -1, + 61, -1, 61, 33, 60, -1, 1, 33, 60, -1, + 4, 42, 58, -1, 54, 42, 58, -1, 4, -1, + 43, 53, 44, 42, 58, -1, 43, 1, 44, 42, + 58, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 174, 174, 177, 182, 185, 190, 194, 201, 204, - 209, 218, 222, 226, 230, 234, 238, 242, 246, 250, - 254, 258, 262, 266, 270, 274, 278, 282, 286, 290, - 294, 298, 302, 307, 312, 318, 326, 329, 332, 338, - 341, 346, 350, 356, 359, 362, 366, 369, 372, 375, - 378, 381, 384, 389, 393, 397, 407, 408, 409, 410, - 413, 416, 417, 418, 421, 424, 427, 431, 434 + 0, 179, 179, 182, 187, 190, 195, 199, 206, 209, + 214, 223, 227, 231, 235, 239, 243, 247, 251, 255, + 259, 263, 267, 271, 275, 279, 283, 287, 291, 295, + 299, 303, 307, 311, 316, 321, 327, 335, 338, 341, + 347, 350, 355, 359, 365, 368, 371, 375, 378, 381, + 384, 387, 390, 393, 398, 402, 406, 416, 417, 418, + 419, 422, 425, 426, 427, 430, 433, 436, 440, 443 }; #endif -#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +#if YYDEBUG || YYERROR_VERBOSE || 1 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = { "$end", "error", "$undefined", "INVALID_CHARACTER", "IDENT", "LITERAL", - "\"==\"", "\"//\"", "\"as\"", "\"def\"", "\"if\"", "\"then\"", + "\"==\"", "\"!=\"", "\"//\"", "\"as\"", "\"def\"", "\"if\"", "\"then\"", "\"else\"", "\"elif\"", "\"end\"", "\"and\"", "\"or\"", "\"|=\"", "\"+=\"", "\"-=\"", "\"*=\"", "\"/=\"", "\"//=\"", "\"<=\"", "\">=\"", "QQSTRING_START", "QQSTRING_TEXT", "QQSTRING_INTERP_START", @@ -626,7 +647,7 @@ static const char *const yytname[] = "'>'", "'+'", "'-'", "'*'", "'/'", "'$'", "':'", "'('", "')'", "'.'", "'['", "']'", "'{'", "'}'", "$accept", "TopLevel", "FuncDefs", "Exp", "String", "FuncDef", "QQString", "ElseBody", "ExpD", "Term", "MkDict", - "MkDictPair", 0 + "MkDictPair", YY_NULL }; #endif @@ -638,21 +659,21 @@ static const yytype_uint16 yytoknum[] = 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 59, 124, 44, 61, 60, 62, 43, 45, 42, 47, - 36, 58, 40, 41, 46, 91, 93, 123, 125 + 285, 59, 124, 44, 61, 60, 62, 43, 45, 42, + 47, 36, 58, 40, 41, 46, 91, 93, 123, 125 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 49, 50, 50, 51, 51, 52, 52, 52, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 53, 54, 54, 55, 55, 55, 56, - 56, 57, 57, 58, 58, 58, 58, 58, 58, 58, - 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, - 59, 59, 59, 59, 60, 60, 60, 60, 60 + 0, 50, 51, 51, 52, 52, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 54, 55, 55, 56, 56, 56, + 57, 57, 58, 58, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, + 59, 60, 60, 60, 60, 61, 61, 61, 61, 61 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -661,10 +682,10 @@ static const yytype_uint8 yyr2[] = 0, 2, 1, 1, 0, 2, 2, 6, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 1, 1, 3, 5, 8, 0, 2, 4, 5, - 3, 3, 1, 1, 3, 2, 4, 3, 1, 3, - 3, 2, 3, 2, 1, 4, 3, 3, 4, 3, - 0, 1, 3, 3, 3, 3, 1, 5, 5 + 3, 3, 1, 1, 3, 5, 8, 0, 2, 4, + 5, 3, 3, 1, 1, 3, 2, 4, 3, 1, + 3, 3, 2, 3, 2, 1, 4, 3, 3, 4, + 3, 0, 1, 3, 3, 3, 3, 1, 5, 5 }; /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. @@ -672,258 +693,264 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint8 yydefact[] = { - 4, 54, 48, 0, 0, 36, 0, 0, 43, 0, - 0, 0, 3, 2, 31, 4, 32, 0, 0, 0, - 0, 0, 53, 0, 0, 45, 0, 51, 0, 0, - 66, 0, 0, 0, 61, 1, 0, 0, 0, 0, + 4, 55, 49, 0, 0, 37, 0, 0, 44, 0, + 0, 0, 3, 2, 32, 4, 33, 0, 0, 0, + 0, 0, 54, 0, 0, 46, 0, 52, 0, 0, + 67, 0, 0, 0, 62, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 5, 6, 0, - 0, 0, 0, 0, 0, 9, 0, 37, 0, 33, - 56, 49, 57, 50, 0, 59, 0, 0, 0, 0, - 52, 0, 26, 13, 12, 11, 15, 19, 21, 23, - 25, 14, 29, 30, 16, 17, 10, 27, 28, 18, - 20, 22, 24, 0, 44, 0, 47, 0, 55, 0, - 0, 0, 0, 0, 63, 64, 42, 0, 0, 65, - 62, 0, 58, 46, 34, 0, 0, 0, 8, 38, - 0, 0, 0, 0, 0, 0, 0, 41, 68, 67, - 7, 0, 40, 0, 35, 0, 39 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 6, + 0, 0, 0, 0, 0, 0, 9, 0, 38, 0, + 34, 57, 50, 58, 51, 0, 60, 0, 0, 0, + 0, 53, 0, 26, 27, 13, 12, 11, 15, 19, + 21, 23, 25, 14, 30, 31, 16, 17, 10, 28, + 29, 18, 20, 22, 24, 0, 45, 0, 48, 0, + 56, 0, 0, 0, 0, 0, 64, 65, 43, 0, + 0, 66, 63, 0, 59, 47, 35, 0, 0, 0, + 8, 39, 0, 0, 0, 0, 0, 0, 0, 42, + 69, 68, 7, 0, 41, 0, 36, 0, 40 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 11, 12, 58, 14, 20, 21, 128, 115, 16, + -1, 11, 12, 59, 14, 20, 21, 130, 117, 16, 33, 34 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -74 +#define YYPACT_NINF -75 static const yytype_int16 yypact[] = { - 194, -40, -74, 10, 194, -74, 16, 137, 18, 77, - 63, 28, -74, 651, -74, 194, 54, 194, -26, 311, - 194, -16, -74, -13, 345, -74, -17, -74, 236, -27, - -8, 150, -7, 12, 3, -74, 194, 194, 194, 194, - 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, - 194, 194, 194, 194, 194, 194, 194, -74, 651, 34, - 71, 127, 379, 194, 73, -74, 194, -74, 194, -74, - -74, -74, -74, -74, 72, -74, 181, -11, 413, 181, - -74, 72, 177, 719, 763, 769, 744, 744, 744, 744, - 744, 744, 177, 177, 685, 719, 744, 177, 177, -14, - -14, -74, -74, 75, -74, 37, -74, 270, -74, 481, - 41, 447, 515, 48, -74, 58, -18, 44, 49, 58, - -74, 60, -74, -74, -74, 51, 194, 194, -74, -74, - 181, 181, 181, 194, 194, 549, 583, -74, 58, 58, - 685, 617, -74, 194, -74, 447, -74 + 175, -41, -75, 10, 175, -75, 16, 129, 18, 78, + 64, 28, -75, 645, -75, 175, 52, 175, -27, 295, + 175, -17, -75, -14, 330, -75, -18, -75, 218, -28, + -10, 152, -8, -16, 2, -75, 175, 175, 175, 175, + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, + 175, 175, 175, 175, 175, 175, 175, 175, -75, 645, + 22, 71, 101, 365, 175, 72, -75, 175, -75, 175, + -75, -75, -75, -75, -75, 73, -75, 146, 34, 400, + 146, -75, 73, 785, 785, 715, 791, 765, 740, 740, + 740, 740, 740, 740, 785, 785, 680, 715, 740, 785, + 785, -15, -15, -75, -75, 76, -75, 37, -75, 253, + -75, 470, 41, 435, 505, 48, -75, 54, -19, 45, + 49, 54, -75, 60, -75, -75, -75, 51, 175, 175, + -75, -75, 146, 146, 146, 175, 175, 540, 575, -75, + 54, 54, 680, 610, -75, 175, -75, 435, -75 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int8 yypgoto[] = { - -74, -74, 78, 0, -9, 8, -74, -51, -61, -73, - -62, -74 + -75, -75, 79, 0, -9, 8, -75, -52, -62, -74, + -63, -75 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -61 +#define YYTABLE_NINF -62 static const yytype_int16 yytable[] = { - 13, 32, 17, 116, 19, 74, 116, 24, 15, 28, - 67, 68, 114, 69, 18, 63, 64, 62, 119, 120, - 22, 75, 25, 15, 55, 56, 60, 61, 35, 72, - 70, 78, 117, 76, 79, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 116, 116, 116, - 80, 107, 59, 109, 29, 32, 111, 30, 112, 137, - 138, 139, 32, 113, 103, 104, 30, 110, 26, 121, - 74, 1, 2, 122, 125, 131, 3, 4, 5, 130, - 132, 133, 134, 57, 146, 0, 0, 5, 60, 61, - 0, 0, 5, 0, 0, 31, 0, 0, 0, 0, - 0, -60, 0, 0, 31, 0, 0, 6, 0, 7, - -60, 8, 9, 27, 10, 0, 135, 136, 105, 0, - 0, 1, 2, 140, 141, 0, 3, 4, 23, 0, - 0, 1, 2, 145, 0, 0, 3, 4, 0, 0, - 0, 77, 5, 0, 1, 2, 0, 0, 0, 3, - 4, 0, 5, 0, 0, 0, 0, 6, 0, 7, - 0, 8, 9, 106, 10, 5, 0, 6, 0, 7, - 0, 8, 9, -61, 10, 1, 2, 0, 0, 0, - 6, 0, 7, 0, 8, 9, 0, 10, 1, 2, - -61, -61, 0, 3, 4, 0, 0, 0, 0, 0, - 0, -61, -61, 53, 54, 55, 56, 0, 0, 5, - 0, 6, 0, 7, 0, 8, 9, 0, 10, 0, - 0, 0, 0, 0, 6, 0, 7, 0, 8, 9, - 0, 10, 36, 37, 0, 0, 0, 0, 0, 0, - 0, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 0, 0, 0, 0, 0, 0, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 36, 37, 0, 0, - 0, 0, 73, 0, 0, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 0, 0, 0, 0, 0, - 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 0, 0, 65, 0, 0, 0, 123, 36, 37, 0, - 0, 0, 66, 0, 0, 0, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 0, 0, 0, 0, - 0, 0, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 36, 37, 0, 0, 0, 0, 0, 0, 0, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 0, 0, 0, 0, 0, 0, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 36, 37, 0, 71, 0, - 0, 0, 0, 0, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 0, 0, 0, 0, 0, 0, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 36, - 37, 0, 108, 0, 0, 0, 0, 0, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 0, 0, - 0, 0, 0, 0, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 36, 37, 0, 118, 0, 0, 126, - 127, 0, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 0, 0, 0, 0, 0, 0, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 36, 37, 0, - 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 0, 0, 0, 0, - 0, 124, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 36, 37, 0, 0, 0, 0, 0, 0, 0, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 0, 0, 0, 129, 0, 0, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 36, 37, 0, 0, 0, - 0, 0, 0, 142, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 0, 0, 0, 0, 0, 0, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 36, - 37, 0, 0, 0, 143, 0, 0, 0, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 0, 0, - 0, 0, 0, 0, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 36, 37, 0, 0, 0, 0, 0, - 0, 0, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 0, 0, 0, 0, 0, 144, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 36, 37, 0, - 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 0, 0, 0, 0, - 0, 0, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 36, 37, 0, 0, 0, 0, 0, 0, 0, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 0, 0, 0, 0, 0, 0, 0, 49, 50, 51, - 52, 53, 54, 55, 56, 36, 37, 0, 0, 0, - 0, 0, 0, 0, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 0, 0, 0, 0, 0, 0, - 36, 0, 50, 51, 52, 53, 54, 55, 56, 38, - 39, -61, -61, -61, -61, -61, -61, 46, 47, 36, - 0, 0, 0, 0, 0, 36, 0, -61, 51, 52, - 53, 54, 55, 56, 38, 0, 46, 47, 0, 0, - 0, 0, 46, 47, 0, 0, 0, 51, 52, 53, - 54, 55, 56, 51, 52, 53, 54, 55, 56 + 13, 32, 17, 118, 19, 75, 118, 24, 15, 28, + 68, 69, 116, 70, 18, 64, 65, 63, 121, 122, + 22, 76, 25, 15, 56, 57, 61, 62, 35, 73, + 71, 79, 77, 81, 80, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 118, 118, + 118, 60, 109, 105, 111, 29, 32, 113, 30, 114, + 139, 140, 141, 32, 115, 106, 112, 30, 119, 26, + 123, 75, 1, 2, 124, 127, 132, 133, 3, 4, + 5, 134, 135, 136, 58, 148, 0, 61, 62, 5, + 0, 0, 107, 0, 5, 1, 2, 31, 0, 0, + 0, 3, 4, -61, 0, 0, 31, 0, 0, 6, + 0, 7, -61, 8, 9, 27, 10, 5, 137, 138, + 23, 0, 0, 1, 2, 142, 143, 0, 0, 3, + 4, 0, 6, 0, 7, 147, 8, 9, 108, 10, + 1, 2, 0, 78, 0, 5, 1, 2, 0, 0, + 0, 0, 3, 4, 0, 0, 0, 0, 0, 0, + 6, 0, 7, 0, 8, 9, 0, 10, 5, 1, + 2, 0, 0, 0, 0, 3, 4, 6, 0, 7, + 0, 8, 9, 6, 10, 7, 0, 8, 9, 0, + 10, 5, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 6, 0, 7, 0, + 8, 9, 0, 10, 36, 37, 38, 0, 0, 0, + 0, 0, 0, 0, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 0, 0, 0, 0, 0, 0, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 36, + 37, 38, 0, 0, 0, 74, 0, 0, 0, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 0, + 0, 0, 0, 0, 0, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 0, 0, 66, 0, 0, 0, + 125, 36, 37, 38, 0, 0, 0, 67, 0, 0, + 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 0, 0, 0, 0, 0, 0, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 36, 37, 38, 0, + 0, 0, 0, 0, 0, 0, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 0, 0, 0, 0, + 0, 0, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 36, 37, 38, 72, 0, 0, 0, 0, 0, + 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 0, 0, 0, 0, 0, 0, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 36, 37, 38, 110, + 0, 0, 0, 0, 0, 0, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 0, 0, 0, 0, + 0, 0, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 36, 37, 38, 120, 0, 0, 0, 128, 129, + 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 0, 0, 0, 0, 0, 0, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 36, 37, 38, 0, + 0, 0, 0, 0, 0, 0, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 0, 0, 0, 0, + 0, 126, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 36, 37, 38, 0, 0, 0, 0, 0, 0, + 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 0, 0, 0, 131, 0, 0, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 36, 37, 38, 0, + 0, 0, 0, 0, 0, 144, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 0, 0, 0, 0, + 0, 0, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 36, 37, 38, 0, 0, 0, 145, 0, 0, + 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 0, 0, 0, 0, 0, 0, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 36, 37, 38, 0, + 0, 0, 0, 0, 0, 0, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 0, 0, 0, 0, + 0, 146, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 36, 37, 38, 0, 0, 0, 0, 0, 0, + 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 0, 0, 0, 0, 0, 0, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 36, 37, 38, 0, + 0, 0, 0, 0, 0, 0, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 0, 0, 0, 0, + 0, 0, 0, 50, 51, 52, 53, 54, 55, 56, + 57, 36, 37, 38, 0, 0, 0, 0, 0, 0, + 0, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 0, 0, 0, 0, 0, 36, 37, 0, 51, + 52, 53, 54, 55, 56, 57, 39, 40, -62, -62, + -62, -62, -62, -62, 47, 48, 0, 0, 0, 0, + 0, 36, 37, 0, -62, 52, 53, 54, 55, 56, + 57, 39, 0, 0, 0, 0, 0, 0, 0, 47, + 48, -62, -62, 0, 0, 0, 0, 36, 37, 0, + 52, 53, 54, 55, 56, 57, 0, 0, 0, -62, + -62, 0, 0, 0, 0, 47, 48, 0, 0, 0, + -62, -62, 54, 55, 56, 57, 52, 53, 54, 55, + 56, 57 }; #define yypact_value_is_default(yystate) \ - ((yystate) == (-74)) + ((yystate) == (-75)) #define yytable_value_is_error(yytable_value) \ - ((yytable_value) == (-61)) + ((yytable_value) == (-62)) static const yytype_int16 yycheck[] = { - 0, 10, 42, 76, 4, 32, 79, 7, 0, 9, - 26, 27, 74, 29, 4, 41, 42, 17, 79, 81, - 4, 48, 4, 15, 38, 39, 44, 45, 0, 46, - 43, 31, 43, 41, 41, 32, 36, 37, 38, 39, + 0, 10, 43, 77, 4, 33, 80, 7, 0, 9, + 27, 28, 75, 30, 4, 42, 43, 17, 80, 82, + 4, 49, 4, 15, 39, 40, 45, 46, 0, 47, + 44, 31, 42, 49, 42, 33, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 130, 131, 132, - 48, 61, 8, 63, 1, 74, 66, 4, 68, 130, - 131, 132, 81, 1, 40, 4, 4, 4, 1, 4, - 32, 4, 5, 46, 43, 41, 9, 10, 25, 31, - 41, 31, 41, 15, 145, -1, -1, 25, 44, 45, - -1, -1, 25, -1, -1, 42, -1, -1, -1, -1, - -1, 48, -1, -1, 42, -1, -1, 40, -1, 42, - 48, 44, 45, 46, 47, -1, 126, 127, 1, -1, - -1, 4, 5, 133, 134, -1, 9, 10, 1, -1, - -1, 4, 5, 143, -1, -1, 9, 10, -1, -1, - -1, 1, 25, -1, 4, 5, -1, -1, -1, 9, - 10, -1, 25, -1, -1, -1, -1, 40, -1, 42, - -1, 44, 45, 46, 47, 25, -1, 40, -1, 42, - -1, 44, 45, 6, 47, 4, 5, -1, -1, -1, - 40, -1, 42, -1, 44, 45, -1, 47, 4, 5, - 23, 24, -1, 9, 10, -1, -1, -1, -1, -1, - -1, 34, 35, 36, 37, 38, 39, -1, -1, 25, - -1, 40, -1, 42, -1, 44, 45, -1, 47, -1, - -1, -1, -1, -1, 40, -1, 42, -1, 44, 45, - -1, 47, 6, 7, -1, -1, -1, -1, -1, -1, - -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, -1, -1, -1, -1, -1, -1, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 6, 7, -1, -1, - -1, -1, 46, -1, -1, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, -1, -1, -1, -1, -1, + 50, 51, 52, 53, 54, 55, 56, 57, 132, 133, + 134, 9, 62, 41, 64, 1, 75, 67, 4, 69, + 132, 133, 134, 82, 1, 4, 4, 4, 44, 1, + 4, 33, 4, 5, 47, 44, 32, 42, 10, 11, + 26, 42, 32, 42, 15, 147, -1, 45, 46, 26, + -1, -1, 1, -1, 26, 4, 5, 43, -1, -1, + -1, 10, 11, 49, -1, -1, 43, -1, -1, 41, + -1, 43, 49, 45, 46, 47, 48, 26, 128, 129, + 1, -1, -1, 4, 5, 135, 136, -1, -1, 10, + 11, -1, 41, -1, 43, 145, 45, 46, 47, 48, + 4, 5, -1, 1, -1, 26, 4, 5, -1, -1, + -1, -1, 10, 11, -1, -1, -1, -1, -1, -1, + 41, -1, 43, -1, 45, 46, -1, 48, 26, 4, + 5, -1, -1, -1, -1, 10, 11, 41, -1, 43, + -1, 45, 46, 41, 48, 43, -1, 45, 46, -1, + 48, 26, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 41, -1, 43, -1, + 45, 46, -1, 48, 6, 7, 8, -1, -1, -1, + -1, -1, -1, -1, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, -1, -1, -1, -1, -1, -1, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 6, + 7, 8, -1, -1, -1, 47, -1, -1, -1, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, -1, + -1, -1, -1, -1, -1, 32, 33, 34, 35, 36, + 37, 38, 39, 40, -1, -1, 1, -1, -1, -1, + 47, 6, 7, 8, -1, -1, -1, 12, -1, -1, + -1, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, -1, -1, -1, -1, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 6, 7, 8, -1, + -1, -1, -1, -1, -1, -1, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, + -1, -1, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 6, 7, 8, 44, -1, -1, -1, -1, -1, + -1, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, -1, -1, -1, -1, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 6, 7, 8, 44, + -1, -1, -1, -1, -1, -1, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, + -1, -1, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 6, 7, 8, 44, -1, -1, -1, 13, 14, + -1, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, -1, -1, -1, -1, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 6, 7, 8, -1, + -1, -1, -1, -1, -1, -1, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1, 31, 32, 33, 34, 35, 36, 37, 38, 39, - -1, -1, 1, -1, -1, -1, 46, 6, 7, -1, - -1, -1, 11, -1, -1, -1, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, - -1, -1, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 6, 7, -1, -1, -1, -1, -1, -1, -1, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - -1, -1, -1, -1, -1, -1, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 6, 7, -1, 43, -1, - -1, -1, -1, -1, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 6, - 7, -1, 43, -1, -1, -1, -1, -1, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, -1, -1, - -1, -1, -1, -1, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 6, 7, -1, 43, -1, -1, 12, - 13, -1, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, -1, -1, -1, -1, -1, -1, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 6, 7, -1, - -1, -1, -1, -1, -1, -1, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, - -1, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 6, 7, -1, -1, -1, -1, -1, -1, -1, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - -1, -1, -1, 28, -1, -1, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 6, 7, -1, -1, -1, - -1, -1, -1, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 6, - 7, -1, -1, -1, 11, -1, -1, -1, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, -1, -1, - -1, -1, -1, -1, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 6, 7, -1, -1, -1, -1, -1, - -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, -1, -1, -1, -1, -1, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 6, 7, -1, - -1, -1, -1, -1, -1, -1, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, -1, -1, -1, -1, - -1, -1, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 6, 7, -1, -1, -1, -1, -1, -1, -1, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - -1, -1, -1, -1, -1, -1, -1, 32, 33, 34, - 35, 36, 37, 38, 39, 6, 7, -1, -1, -1, - -1, -1, -1, -1, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, -1, -1, -1, -1, -1, -1, - 6, -1, 33, 34, 35, 36, 37, 38, 39, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 6, - -1, -1, -1, -1, -1, 6, -1, 33, 34, 35, - 36, 37, 38, 39, 15, -1, 23, 24, -1, -1, - -1, -1, 23, 24, -1, -1, -1, 34, 35, 36, - 37, 38, 39, 34, 35, 36, 37, 38, 39 + 40, 6, 7, 8, -1, -1, -1, -1, -1, -1, + -1, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, -1, 29, -1, -1, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 6, 7, 8, -1, + -1, -1, -1, -1, -1, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, + -1, -1, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 6, 7, 8, -1, -1, -1, 12, -1, -1, + -1, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, -1, -1, -1, -1, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 6, 7, 8, -1, + -1, -1, -1, -1, -1, -1, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, + -1, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 6, 7, 8, -1, -1, -1, -1, -1, -1, + -1, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, -1, -1, -1, -1, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 6, 7, 8, -1, + -1, -1, -1, -1, -1, -1, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, + -1, -1, -1, 33, 34, 35, 36, 37, 38, 39, + 40, 6, 7, 8, -1, -1, -1, -1, -1, -1, + -1, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, -1, -1, -1, 6, 7, -1, 34, + 35, 36, 37, 38, 39, 40, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, + -1, 6, 7, -1, 34, 35, 36, 37, 38, 39, + 40, 16, -1, -1, -1, -1, -1, -1, -1, 24, + 25, 6, 7, -1, -1, -1, -1, 6, 7, -1, + 35, 36, 37, 38, 39, 40, -1, -1, -1, 24, + 25, -1, -1, -1, -1, 24, 25, -1, -1, -1, + 35, 36, 37, 38, 39, 40, 35, 36, 37, 38, + 39, 40 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 4, 5, 9, 10, 25, 40, 42, 44, 45, - 47, 50, 51, 52, 53, 54, 58, 42, 4, 52, - 54, 55, 4, 1, 52, 4, 1, 46, 52, 1, - 4, 42, 53, 59, 60, 0, 6, 7, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 51, 52, 8, - 44, 45, 52, 41, 42, 1, 11, 26, 27, 29, - 43, 43, 46, 46, 32, 48, 41, 1, 52, 41, - 48, 32, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 40, 4, 1, 46, 52, 43, 52, - 4, 52, 52, 1, 59, 57, 58, 43, 43, 57, - 59, 4, 46, 46, 30, 43, 12, 13, 56, 28, - 31, 41, 41, 31, 41, 52, 52, 57, 57, 57, - 52, 52, 14, 11, 30, 52, 56 + 0, 4, 5, 10, 11, 26, 41, 43, 45, 46, + 48, 51, 52, 53, 54, 55, 59, 43, 4, 53, + 55, 56, 4, 1, 53, 4, 1, 47, 53, 1, + 4, 43, 54, 60, 61, 0, 6, 7, 8, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 52, 53, + 9, 45, 46, 53, 42, 43, 1, 12, 27, 28, + 30, 44, 44, 47, 47, 33, 49, 42, 1, 53, + 42, 49, 33, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 41, 4, 1, 47, 53, + 44, 53, 4, 53, 53, 1, 60, 58, 59, 44, + 44, 58, 60, 4, 47, 47, 31, 44, 13, 14, + 57, 29, 32, 42, 42, 32, 42, 53, 53, 58, + 58, 58, 53, 53, 15, 12, 31, 53, 57 }; #define yyerrok (yyerrstatus = 0) @@ -953,17 +980,18 @@ static const yytype_uint8 yystos[] = #define YYRECOVERING() (!!yyerrstatus) -#define YYBACKUP(Token, Value) \ -do \ - if (yychar == YYEMPTY && yylen == 1) \ - { \ - yychar = (Token); \ - yylval = (Value); \ - YYPOPSTACK (1); \ - goto yybackup; \ - } \ - else \ - { \ +#define YYBACKUP(Token, Value) \ +do \ + if (yychar == YYEMPTY) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \ + goto yybackup; \ + } \ + else \ + { \ yyerror (&yylloc, answer, errors, locations, lexer, YY_("syntax error: cannot back up")); \ YYERROR; \ } \ @@ -973,32 +1001,33 @@ while (YYID (0)) #define YYTERROR 1 #define YYERRCODE 256 - /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. If N is 0, then set CURRENT to the empty location which ends the previous symbol: RHS[0] (always defined). */ -#define YYRHSLOC(Rhs, K) ((Rhs)[K]) #ifndef YYLLOC_DEFAULT -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (YYID (N)) \ - { \ - (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ - (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ - (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ - (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ - } \ - else \ - { \ - (Current).first_line = (Current).last_line = \ - YYRHSLOC (Rhs, 0).last_line; \ - (Current).first_column = (Current).last_column = \ - YYRHSLOC (Rhs, 0).last_column; \ - } \ +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (YYID (N)) \ + { \ + (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ + (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ + (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ + (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ + } \ + else \ + { \ + (Current).first_line = (Current).last_line = \ + YYRHSLOC (Rhs, 0).last_line; \ + (Current).first_column = (Current).last_column = \ + YYRHSLOC (Rhs, 0).last_column; \ + } \ while (YYID (0)) #endif +#define YYRHSLOC(Rhs, K) ((Rhs)[K]) + + /* YY_LOCATION_PRINT -- Print the location on the stream. This macro was not mandated originally: define only if we know @@ -1072,6 +1101,8 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, answer, errors, yyscan_t lexer; #endif { + FILE *yyo = yyoutput; + YYUSE (yyo); if (!yyvaluep) return; YYUSE (yylocationp); @@ -1340,12 +1371,12 @@ static int yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken) { - YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]); + YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]); YYSIZE_T yysize = yysize0; YYSIZE_T yysize1; enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; /* Internationalized format string. */ - const char *yyformat = 0; + const char *yyformat = YY_NULL; /* Arguments of yyformat. */ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; /* Number of reported tokens (one for the "unexpected", one per @@ -1405,7 +1436,7 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, break; } yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (0, yytname[yyx]); + yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]); if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) return 2; @@ -1500,122 +1531,96 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, answer, errors, locations, lex switch (yytype) { - case 4: /* "IDENT" */ - -/* Line 1391 of yacc.c */ -#line 29 "parser.y" - { jv_free((yyvaluep->literal)); }; - -/* Line 1391 of yacc.c */ -#line 1511 "parser.gen.c" - break; - case 5: /* "LITERAL" */ - -/* Line 1391 of yacc.c */ -#line 29 "parser.y" - { jv_free((yyvaluep->literal)); }; - -/* Line 1391 of yacc.c */ -#line 1520 "parser.gen.c" + case 4: /* IDENT */ +/* Line 1381 of yacc.c */ +#line 32 "parser.y" + { jv_free(((*yyvaluep).literal)); }; +/* Line 1381 of yacc.c */ +#line 1540 "parser.gen.c" break; - case 26: /* "QQSTRING_TEXT" */ - -/* Line 1391 of yacc.c */ -#line 29 "parser.y" - { jv_free((yyvaluep->literal)); }; - -/* Line 1391 of yacc.c */ -#line 1529 "parser.gen.c" + case 5: /* LITERAL */ +/* Line 1381 of yacc.c */ +#line 32 "parser.y" + { jv_free(((*yyvaluep).literal)); }; +/* Line 1381 of yacc.c */ +#line 1547 "parser.gen.c" break; - case 51: /* "FuncDefs" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1538 "parser.gen.c" + case 27: /* QQSTRING_TEXT */ +/* Line 1381 of yacc.c */ +#line 32 "parser.y" + { jv_free(((*yyvaluep).literal)); }; +/* Line 1381 of yacc.c */ +#line 1554 "parser.gen.c" break; - case 52: /* "Exp" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1547 "parser.gen.c" + case 52: /* FuncDefs */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1561 "parser.gen.c" break; - case 53: /* "String" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1556 "parser.gen.c" + case 53: /* Exp */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1568 "parser.gen.c" break; - case 54: /* "FuncDef" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1565 "parser.gen.c" + case 54: /* String */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1575 "parser.gen.c" break; - case 55: /* "QQString" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1574 "parser.gen.c" + case 55: /* FuncDef */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1582 "parser.gen.c" break; - case 56: /* "ElseBody" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1583 "parser.gen.c" + case 56: /* QQString */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1589 "parser.gen.c" break; - case 57: /* "ExpD" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1592 "parser.gen.c" + case 57: /* ElseBody */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1596 "parser.gen.c" break; - case 58: /* "Term" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1601 "parser.gen.c" + case 58: /* ExpD */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1603 "parser.gen.c" break; - case 59: /* "MkDict" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ + case 59: /* Term */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ #line 1610 "parser.gen.c" break; - case 60: /* "MkDictPair" */ - -/* Line 1391 of yacc.c */ -#line 30 "parser.y" - { block_free((yyvaluep->blk)); }; - -/* Line 1391 of yacc.c */ -#line 1619 "parser.gen.c" + case 60: /* MkDict */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1617 "parser.gen.c" + break; + case 61: /* MkDictPair */ +/* Line 1381 of yacc.c */ +#line 33 "parser.y" + { block_free(((*yyvaluep).blk)); }; +/* Line 1381 of yacc.c */ +#line 1624 "parser.gen.c" break; default: @@ -1624,20 +1629,6 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, answer, errors, locations, lex } -/* Prevent warnings from -Wmissing-prototypes. */ -#ifdef YYPARSE_PARAM -#if defined __STDC__ || defined __cplusplus -int yyparse (void *YYPARSE_PARAM); -#else -int yyparse (); -#endif -#else /* ! YYPARSE_PARAM */ -#if defined __STDC__ || defined __cplusplus -int yyparse (block* answer, int* errors, struct locfile* locations, yyscan_t lexer); -#else -int yyparse (); -#endif -#endif /* ! YYPARSE_PARAM */ /*----------. @@ -1690,7 +1681,7 @@ YYLTYPE yylloc; `yyvs': related to semantic values. `yyls': related to locations. - Refer to the stacks thru separate pointers, to allow yyoverflow + Refer to the stacks through separate pointers, to allow yyoverflow to reallocate them elsewhere. */ /* The state stack. */ @@ -1761,7 +1752,6 @@ YYLTYPE yylloc; yylloc.first_line = yylloc.last_line = 1; yylloc.first_column = yylloc.last_column = 1; #endif - goto yysetstate; /*------------------------------------------------------------. @@ -1945,54 +1935,48 @@ yyreduce: switch (yyn) { case 2: - -/* Line 1806 of yacc.c */ -#line 174 "parser.y" +/* Line 1787 of yacc.c */ +#line 179 "parser.y" { *answer = (yyvsp[(1) - (1)].blk); } break; case 3: - -/* Line 1806 of yacc.c */ -#line 177 "parser.y" +/* Line 1787 of yacc.c */ +#line 182 "parser.y" { *answer = (yyvsp[(1) - (1)].blk); } break; case 4: - -/* Line 1806 of yacc.c */ -#line 182 "parser.y" +/* Line 1787 of yacc.c */ +#line 187 "parser.y" { (yyval.blk) = gen_noop(); } break; case 5: - -/* Line 1806 of yacc.c */ -#line 185 "parser.y" +/* Line 1787 of yacc.c */ +#line 190 "parser.y" { (yyval.blk) = block_join((yyvsp[(1) - (2)].blk), (yyvsp[(2) - (2)].blk)); } break; case 6: - -/* Line 1806 of yacc.c */ -#line 190 "parser.y" +/* Line 1787 of yacc.c */ +#line 195 "parser.y" { (yyval.blk) = block_bind((yyvsp[(1) - (2)].blk), (yyvsp[(2) - (2)].blk), OP_IS_CALL_PSEUDO); } break; case 7: - -/* Line 1806 of yacc.c */ -#line 194 "parser.y" +/* Line 1787 of yacc.c */ +#line 199 "parser.y" { (yyval.blk) = gen_op_simple(DUP); block_append(&(yyval.blk), (yyvsp[(1) - (6)].blk)); @@ -2002,18 +1986,16 @@ yyreduce: break; case 8: - -/* Line 1806 of yacc.c */ -#line 201 "parser.y" +/* Line 1787 of yacc.c */ +#line 206 "parser.y" { (yyval.blk) = gen_cond((yyvsp[(2) - (5)].blk), (yyvsp[(4) - (5)].blk), (yyvsp[(5) - (5)].blk)); } break; case 9: - -/* Line 1806 of yacc.c */ -#line 204 "parser.y" +/* Line 1787 of yacc.c */ +#line 209 "parser.y" { FAIL((yyloc), "Possibly unterminated 'if' statment"); (yyval.blk) = (yyvsp[(2) - (3)].blk); @@ -2021,9 +2003,8 @@ yyreduce: break; case 10: - -/* Line 1806 of yacc.c */ -#line 209 "parser.y" +/* Line 1787 of yacc.c */ +#line 214 "parser.y" { block assign = gen_op_simple(DUP); block_append(&assign, (yyvsp[(3) - (3)].blk)); @@ -2035,216 +2016,200 @@ yyreduce: break; case 11: - -/* Line 1806 of yacc.c */ -#line 218 "parser.y" +/* Line 1787 of yacc.c */ +#line 223 "parser.y" { (yyval.blk) = gen_or((yyvsp[(1) - (3)].blk), (yyvsp[(3) - (3)].blk)); } break; case 12: - -/* Line 1806 of yacc.c */ -#line 222 "parser.y" +/* Line 1787 of yacc.c */ +#line 227 "parser.y" { (yyval.blk) = gen_and((yyvsp[(1) - (3)].blk), (yyvsp[(3) - (3)