diff options
Diffstat (limited to 'engines/director/lingo/lingo-gr.cpp')
-rw-r--r-- | engines/director/lingo/lingo-gr.cpp | 804 |
1 files changed, 410 insertions, 394 deletions
diff --git a/engines/director/lingo/lingo-gr.cpp b/engines/director/lingo/lingo-gr.cpp index 14902d00d1..489efbe762 100644 --- a/engines/director/lingo/lingo-gr.cpp +++ b/engines/director/lingo/lingo-gr.cpp @@ -99,32 +99,32 @@ SYMBOL = 288, ENDCLAUSE = 289, tPLAYACCEL = 290, - tDOWN = 291, - tELSE = 292, - tELSIF = 293, - tEXIT = 294, - tFRAME = 295, - tGLOBAL = 296, - tGO = 297, - tIF = 298, - tINTO = 299, - tLOOP = 300, - tMACRO = 301, - tMOVIE = 302, - tNEXT = 303, - tOF = 304, - tPREVIOUS = 305, - tPUT = 306, - tREPEAT = 307, - tSET = 308, - tTHEN = 309, - tTO = 310, - tWHEN = 311, - tWITH = 312, - tWHILE = 313, - tNLELSE = 314, - tFACTORY = 315, - tMETHOD = 316, + tMETHOD = 291, + tDOWN = 292, + tELSE = 293, + tELSIF = 294, + tEXIT = 295, + tFRAME = 296, + tGLOBAL = 297, + tGO = 298, + tIF = 299, + tINTO = 300, + tLOOP = 301, + tMACRO = 302, + tMOVIE = 303, + tNEXT = 304, + tOF = 305, + tPREVIOUS = 306, + tPUT = 307, + tREPEAT = 308, + tSET = 309, + tTHEN = 310, + tTO = 311, + tWHEN = 312, + tWITH = 313, + tWHILE = 314, + tNLELSE = 315, + tFACTORY = 316, tOPEN = 317, tPLAY = 318, tDONE = 319, @@ -192,32 +192,32 @@ #define SYMBOL 288 #define ENDCLAUSE 289 #define tPLAYACCEL 290 -#define tDOWN 291 -#define tELSE 292 -#define tELSIF 293 -#define tEXIT 294 -#define tFRAME 295 -#define tGLOBAL 296 -#define tGO 297 -#define tIF 298 -#define tINTO 299 -#define tLOOP 300 -#define tMACRO 301 -#define tMOVIE 302 -#define tNEXT 303 -#define tOF 304 -#define tPREVIOUS 305 -#define tPUT 306 -#define tREPEAT 307 -#define tSET 308 -#define tTHEN 309 -#define tTO 310 -#define tWHEN 311 -#define tWITH 312 -#define tWHILE 313 -#define tNLELSE 314 -#define tFACTORY 315 -#define tMETHOD 316 +#define tMETHOD 291 +#define tDOWN 292 +#define tELSE 293 +#define tELSIF 294 +#define tEXIT 295 +#define tFRAME 296 +#define tGLOBAL 297 +#define tGO 298 +#define tIF 299 +#define tINTO 300 +#define tLOOP 301 +#define tMACRO 302 +#define tMOVIE 303 +#define tNEXT 304 +#define tOF 305 +#define tPREVIOUS 306 +#define tPUT 307 +#define tREPEAT 308 +#define tSET 309 +#define tTHEN 310 +#define tTO 311 +#define tWHEN 312 +#define tWITH 313 +#define tWHILE 314 +#define tNLELSE 315 +#define tFACTORY 316 #define tOPEN 317 #define tPLAY 318 #define tDONE 319 @@ -544,7 +544,7 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 126 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1445 +#define YYLAST 1526 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 107 @@ -553,7 +553,7 @@ union yyalloc /* YYNRULES -- Number of rules. */ #define YYNRULES 154 /* YYNRULES -- Number of states. */ -#define YYNSTATES 327 +#define YYNSTATES 326 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -620,33 +620,33 @@ static const yytype_uint16 yyprhs[] = 385, 388, 390, 393, 396, 398, 401, 406, 413, 418, 421, 425, 427, 431, 433, 437, 439, 443, 446, 449, 452, 455, 459, 462, 465, 467, 471, 474, 477, 480, - 484, 487, 488, 492, 493, 502, 505, 506, 515, 524, - 531, 534, 535, 537, 541, 546, 547, 549, 553, 554, - 557, 558, 560, 564, 566 + 484, 487, 488, 492, 493, 502, 505, 506, 514, 523, + 530, 533, 534, 536, 540, 545, 546, 548, 552, 553, + 556, 557, 559, 563, 565 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { 108, 0, -1, 108, 101, 109, -1, 109, -1, 1, - 101, -1, -1, 137, -1, 112, -1, 51, 126, 44, - 30, -1, 51, 126, 44, 127, -1, 51, 126, 74, - 126, -1, 51, 126, 75, 126, -1, 53, 30, 68, - 126, -1, 53, 15, 68, 126, -1, 53, 30, 55, - 126, -1, 53, 15, 55, 126, -1, 53, 16, 126, - 55, 126, -1, 53, 16, 125, 68, 126, -1, 144, + 101, -1, -1, 137, -1, 112, -1, 52, 126, 45, + 30, -1, 52, 126, 45, 127, -1, 52, 126, 74, + 126, -1, 52, 126, 75, 126, -1, 54, 30, 68, + 126, -1, 54, 15, 68, 126, -1, 54, 30, 56, + 126, -1, 54, 15, 56, 126, -1, 54, 16, 126, + 56, 126, -1, 54, 16, 125, 68, 126, -1, 144, -1, 126, -1, 128, -1, 111, -1, 113, -1, 116, 126, 121, 122, 121, 91, -1, 117, 68, 126, 121, - 55, 126, 121, 122, 121, 91, -1, 117, 68, 126, - 121, 36, 55, 126, 121, 122, 121, 91, -1, 123, + 56, 126, 121, 122, 121, 91, -1, 117, 68, 126, + 121, 37, 56, 126, 121, 122, 121, 91, -1, 123, 111, 121, -1, 124, 126, 101, 122, 121, 92, -1, - 124, 126, 55, 126, -1, 118, 126, 121, 54, 122, - 121, 114, 121, 90, -1, 118, 126, 121, 54, 122, - 121, 114, 37, 120, 122, 121, 90, -1, -1, 115, - 114, -1, 119, 126, 121, 54, 122, 121, -1, 52, - 58, -1, 52, 57, 30, -1, 43, -1, 38, -1, - -1, -1, -1, 122, 101, -1, 122, 112, -1, 56, - 30, 54, -1, 86, -1, 12, -1, 17, -1, 33, + 124, 126, 56, 126, -1, 118, 126, 121, 55, 122, + 121, 114, 121, 90, -1, 118, 126, 121, 55, 122, + 121, 114, 38, 120, 122, 121, 90, -1, -1, 115, + 114, -1, 119, 126, 121, 55, 122, 121, -1, 53, + 59, -1, 53, 58, 30, -1, 44, -1, 39, -1, + -1, -1, -1, 122, 101, -1, 122, 112, -1, 57, + 30, 55, -1, 86, -1, 12, -1, 17, -1, 33, -1, 31, -1, 30, -1, 125, -1, 127, -1, 25, -1, 26, 126, -1, 27, 146, -1, 30, 102, 145, 103, -1, 15, -1, 16, 126, -1, 110, -1, 126, @@ -659,32 +659,32 @@ static const yytype_int16 yyrhs[] = 126, -1, 126, 77, 126, -1, 126, 78, 126, -1, 96, 126, -1, 97, 126, -1, 102, 126, 103, -1, 104, 145, 105, -1, 83, 126, 84, 126, -1, 83, - 126, 85, 126, -1, 79, 126, 49, 126, -1, 79, - 126, 55, 126, 49, 126, -1, 80, 126, 49, 126, - -1, 80, 126, 55, 126, 49, 126, -1, 81, 126, - 49, 126, -1, 81, 126, 55, 126, 49, 126, -1, - 82, 126, 49, 126, -1, 82, 126, 55, 126, 49, - 126, -1, 89, -1, 29, 126, -1, 51, 126, -1, - 132, -1, 135, -1, 39, 52, -1, 39, -1, 41, + 126, 85, 126, -1, 79, 126, 50, 126, -1, 79, + 126, 56, 126, 50, 126, -1, 80, 126, 50, 126, + -1, 80, 126, 56, 126, 50, 126, -1, 81, 126, + 50, 126, -1, 81, 126, 56, 126, 50, 126, -1, + 82, 126, 50, 126, -1, 82, 126, 56, 126, 50, + 126, -1, 89, -1, 29, 126, -1, 52, 126, -1, + 132, -1, 135, -1, 40, 53, -1, 40, -1, 42, 129, -1, 87, 130, -1, 65, 131, -1, 19, -1, 21, 126, -1, 20, 126, -1, 20, -1, 22, 146, -1, 89, 102, 30, 103, -1, 89, 102, 30, 106, - 145, 103, -1, 62, 126, 57, 126, -1, 62, 126, + 145, 103, -1, 62, 126, 58, 126, -1, 62, 126, -1, 23, 30, 145, -1, 30, -1, 129, 106, 30, -1, 30, -1, 130, 106, 30, -1, 30, -1, 131, - 106, 30, -1, 42, 45, -1, 42, 48, -1, 42, - 50, -1, 42, 133, -1, 42, 133, 134, -1, 42, - 134, -1, 40, 126, -1, 126, -1, 49, 47, 126, - -1, 47, 126, -1, 63, 64, -1, 63, 133, -1, + 106, 30, -1, 43, 46, -1, 43, 49, -1, 43, + 51, -1, 43, 133, -1, 43, 133, 134, -1, 43, + 134, -1, 41, 126, -1, 126, -1, 50, 48, 126, + -1, 48, 126, -1, 63, 64, -1, 63, 133, -1, 63, 133, 134, -1, 63, 134, -1, -1, 35, 136, - 145, -1, -1, 46, 30, 138, 120, 141, 101, 143, - 122, -1, 60, 30, -1, -1, 61, 30, 139, 120, - 141, 101, 143, 122, -1, 140, 120, 141, 101, 143, - 122, 34, 142, -1, 140, 120, 141, 101, 143, 122, - -1, 88, 30, -1, -1, 30, -1, 141, 106, 30, - -1, 141, 101, 106, 30, -1, -1, 30, -1, 142, - 106, 30, -1, -1, 30, 146, -1, -1, 126, -1, - 145, 106, 126, -1, 126, -1, 146, 106, 126, -1 + 145, -1, -1, 47, 30, 138, 120, 141, 101, 143, + 122, -1, 61, 30, -1, -1, 36, 139, 120, 141, + 101, 143, 122, -1, 140, 120, 141, 101, 143, 122, + 34, 142, -1, 140, 120, 141, 101, 143, 122, -1, + 88, 30, -1, -1, 30, -1, 141, 106, 30, -1, + 141, 101, 106, 30, -1, -1, 30, -1, 142, 106, + 30, -1, -1, 30, 146, -1, -1, 126, -1, 145, + 106, 126, -1, 126, -1, 146, 106, 126, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -720,17 +720,17 @@ static const char *const yytname[] = "BLTINNOARGS", "BLTINNOARGSORONE", "BLTINONEARG", "BLTINARGLIST", "TWOWORDBUILTIN", "FBLTIN", "FBLTINNOARGS", "FBLTINONEARG", "FBLTINARGLIST", "RBLTIN", "RBLTINONEARG", "ID", "STRING", "HANDLER", - "SYMBOL", "ENDCLAUSE", "tPLAYACCEL", "tDOWN", "tELSE", "tELSIF", "tEXIT", - "tFRAME", "tGLOBAL", "tGO", "tIF", "tINTO", "tLOOP", "tMACRO", "tMOVIE", - "tNEXT", "tOF", "tPREVIOUS", "tPUT", "tREPEAT", "tSET", "tTHEN", "tTO", - "tWHEN", "tWITH", "tWHILE", "tNLELSE", "tFACTORY", "tMETHOD", "tOPEN", - "tPLAY", "tDONE", "tINSTANCE", "tGE", "tLE", "tEQ", "tNEQ", "tAND", - "tOR", "tNOT", "tMOD", "tAFTER", "tBEFORE", "tCONCAT", "tCONTAINS", - "tSTARTS", "tCHAR", "tITEM", "tLINE", "tWORD", "tSPRITE", "tINTERSECTS", - "tWITHIN", "tTELL", "tPROPERTY", "tON", "tME", "tENDIF", "tENDREPEAT", - "tENDTELL", "'<'", "'>'", "'&'", "'+'", "'-'", "'*'", "'/'", "'%'", - "'\\n'", "'('", "')'", "'['", "']'", "','", "$accept", "program", - "programline", "asgn", "stmtoneliner", "stmt", "ifstmt", + "SYMBOL", "ENDCLAUSE", "tPLAYACCEL", "tMETHOD", "tDOWN", "tELSE", + "tELSIF", "tEXIT", "tFRAME", "tGLOBAL", "tGO", "tIF", "tINTO", "tLOOP", + "tMACRO", "tMOVIE", "tNEXT", "tOF", "tPREVIOUS", "tPUT", "tREPEAT", + "tSET", "tTHEN", "tTO", "tWHEN", "tWITH", "tWHILE", "tNLELSE", + "tFACTORY", "tOPEN", "tPLAY", "tDONE", "tINSTANCE", "tGE", "tLE", "tEQ", + "tNEQ", "tAND", "tOR", "tNOT", "tMOD", "tAFTER", "tBEFORE", "tCONCAT", + "tCONTAINS", "tSTARTS", "tCHAR", "tITEM", "tLINE", "tWORD", "tSPRITE", + "tINTERSECTS", "tWITHIN", "tTELL", "tPROPERTY", "tON", "tME", "tENDIF", + "tENDREPEAT", "tENDTELL", "'<'", "'>'", "'&'", "'+'", "'-'", "'*'", + "'/'", "'%'", "'\\n'", "'('", "')'", "'['", "']'", "','", "$accept", + "program", "programline", "asgn", "stmtoneliner", "stmt", "ifstmt", "elseifstmtlist", "elseifstmt", "repeatwhile", "repeatwith", "if", "elseif", "begin", "end", "stmtlist", "when", "tell", "simpleexpr", "expr", "reference", "proc", "globallist", "propertylist", @@ -796,7 +796,7 @@ static const yytype_uint8 yyr2[] = 2, 1, 2, 2, 1, 2, 4, 6, 4, 2, 3, 1, 3, 1, 3, 1, 3, 2, 2, 2, 2, 3, 2, 2, 1, 3, 2, 2, 2, 3, - 2, 0, 3, 0, 8, 2, 0, 8, 8, 6, + 2, 0, 3, 0, 8, 2, 0, 7, 8, 6, 2, 0, 1, 3, 4, 0, 1, 3, 0, 2, 0, 1, 3, 1, 3 }; @@ -807,38 +807,38 @@ static const yytype_uint8 yyr2[] = static const yytype_uint8 yydefact[] = { 0, 0, 45, 56, 0, 46, 101, 104, 0, 0, - 0, 52, 0, 0, 0, 49, 48, 47, 131, 97, - 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, + 0, 52, 0, 0, 0, 49, 48, 47, 131, 136, + 97, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 91, 0, 0, 0, 150, 0, 3, 58, 21, 7, 22, 0, 0, 0, 0, 0, 50, 19, 51, 20, 94, 95, 6, 38, 18, 4, 49, 0, 91, 57, 103, 102, 153, 105, 150, 53, 54, 92, - 150, 149, 150, 96, 111, 98, 0, 117, 0, 118, - 0, 119, 124, 120, 122, 133, 93, 0, 34, 0, - 0, 0, 0, 135, 136, 109, 127, 128, 130, 115, + 150, 149, 150, 38, 96, 111, 98, 0, 117, 0, + 118, 0, 119, 124, 120, 122, 133, 93, 0, 34, + 0, 0, 0, 0, 135, 109, 127, 128, 130, 115, 100, 72, 0, 0, 0, 0, 0, 113, 99, 140, 0, 77, 78, 0, 151, 0, 1, 5, 39, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 141, 150, 0, 0, 110, 151, 0, 132, 0, 123, - 126, 0, 121, 38, 0, 0, 0, 35, 0, 0, - 50, 0, 0, 0, 43, 38, 0, 129, 0, 0, + 141, 150, 0, 0, 110, 151, 0, 132, 141, 0, + 123, 126, 0, 121, 38, 0, 0, 0, 35, 0, + 0, 50, 0, 0, 0, 43, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 80, 0, 2, 40, 39, 0, 26, 0, 40, 68, 69, 66, 67, 70, 71, 63, 74, 75, 76, 65, 64, 73, 59, 60, 61, 62, 142, 0, - 154, 55, 112, 125, 141, 8, 9, 10, 11, 15, - 13, 0, 0, 14, 12, 141, 108, 116, 83, 0, + 154, 55, 0, 112, 125, 141, 8, 9, 10, 11, + 15, 13, 0, 0, 14, 12, 108, 116, 83, 0, 85, 0, 87, 0, 89, 0, 81, 82, 114, 106, - 150, 152, 39, 0, 40, 28, 39, 148, 0, 0, - 17, 16, 0, 0, 0, 0, 0, 0, 41, 42, - 0, 0, 0, 39, 0, 0, 40, 143, 148, 148, + 150, 152, 39, 0, 40, 28, 39, 148, 0, 148, + 0, 17, 16, 0, 0, 0, 0, 0, 41, 42, + 0, 0, 0, 39, 0, 0, 40, 143, 40, 148, 84, 86, 88, 90, 107, 23, 0, 39, 31, 27, - 144, 139, 40, 40, 39, 40, 37, 39, 31, 0, - 145, 134, 137, 40, 39, 38, 0, 32, 39, 146, - 138, 39, 0, 40, 29, 0, 0, 0, 24, 39, - 40, 147, 25, 0, 39, 30, 33 + 144, 139, 137, 40, 39, 40, 37, 39, 31, 0, + 145, 134, 40, 39, 38, 0, 32, 39, 146, 138, + 39, 0, 40, 29, 0, 0, 0, 24, 39, 40, + 147, 25, 0, 39, 30, 33 }; /* YYDEFGOTO[NTERM-NUM]. */ @@ -846,57 +846,57 @@ static const yytype_int16 yydefgoto[] = { -1, 47, 48, 49, 50, 269, 52, 297, 298, 53, 54, 55, 299, 150, 195, 252, 56, 57, 58, 59, - 60, 61, 85, 118, 110, 62, 93, 94, 63, 82, - 64, 163, 175, 65, 219, 310, 276, 66, 156, 75 + 60, 61, 86, 118, 110, 62, 94, 95, 63, 82, + 64, 164, 83, 65, 219, 309, 276, 66, 156, 75 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -170 +#define YYPACT_NINF -244 static const yytype_int16 yypact[] = { - 271, -80, -170, -170, 819, -170, -170, 819, 819, 819, - 26, -170, 819, 819, 819, 880, -170, -170, -170, 10, - 37, 718, -170, 49, 819, -42, -2, 55, 57, 59, - 819, 779, 78, 819, 819, 819, 819, 819, 819, -170, - 80, 83, 14, 819, 819, 819, 819, 2, -170, -170, - -170, -170, -170, 819, 56, 819, 635, 819, -170, 1346, - -170, -170, -170, -170, -170, -170, -170, -170, 44, 819, - -170, 1346, 1346, 1346, 1346, 46, 819, 1346, 46, 1346, - 819, 46, 819, -170, -170, 47, 819, -170, 819, -170, - 107, -170, 1346, 5, -170, -170, 24, 125, -170, -32, - 819, -5, 102, -170, -170, 1261, -170, 5, -170, -170, - 52, -170, 919, 953, 987, 1021, 1312, -170, 53, -170, - 133, -170, -170, 1274, 1346, 9, -170, 362, 1346, 819, - 1346, -170, 1191, 819, 819, 819, 819, 819, 819, 819, - 819, 819, 819, 819, 819, 819, 819, 819, 819, 819, - 136, 819, 24, 819, 64, 1274, -26, 64, 143, 1346, - 1346, 819, -170, -170, 97, 819, 819, -170, 819, 819, - 106, 1227, 819, 819, -170, -170, 819, -170, 155, 819, - 819, 819, 819, 819, 819, 819, 819, 819, 819, 156, - -20, -170, -170, 819, -170, -170, 1346, 137, -170, 819, - -170, -38, -38, -38, -38, 851, 851, -170, 8, -38, - -38, -38, -38, 8, -51, -51, -170, -170, -170, -82, - 1346, -170, -170, 1346, 136, -170, -170, 1346, 1346, 1346, - -38, 819, 819, 1346, -38, 136, 1346, -170, 1346, 1055, - 1346, 1089, 1346, 1123, 1346, 1157, 1346, 1346, -170, -170, - 819, 1346, 544, -11, -170, 1346, 544, 81, 160, -37, - -38, 1346, -31, 819, 819, 819, 819, 6, -170, -170, - 101, 138, 819, 544, 104, 164, -170, -170, 81, 81, - 1346, 1346, 1346, 1346, -170, -170, 819, 1346, 159, -170, - -170, 453, -170, -170, 1346, -170, -170, 161, 159, 819, - 169, 544, 544, -170, 544, -170, 110, -170, 1346, -170, - 95, 544, 112, -170, -170, 150, 175, 115, -170, 544, - -170, -170, -170, 117, 544, -170, -170 + 302, -84, -244, -244, 893, -244, -244, 893, 893, 893, + 24, -244, 893, 893, 893, 926, -244, -244, -244, -244, + 9, 36, 749, -244, 57, 893, 12, -2, 66, 70, + 893, 832, 71, 893, 893, 893, 893, 893, 893, -244, + 72, 74, 3, 893, 893, 893, 893, 2, -244, -244, + -244, -244, -244, 893, 38, 893, 666, 893, -244, 1427, + -244, -244, -244, -244, -244, -244, -244, -244, 5, 893, + -244, 1427, 1427, 1427, 1427, 4, 893, 1427, 4, 1427, + 893, 4, 893, -244, -244, -244, 6, 893, -244, 893, + -244, 60, -244, 1427, 44, -244, -244, 965, 79, -244, + -1, 893, 0, 56, -244, 1321, -244, 44, -244, -244, + 7, -244, 999, 1033, 1067, 1101, 1393, -244, 8, -244, + 85, -244, -244, 1355, 1427, -7, -244, 393, 1427, 893, + 1427, -244, 1271, 893, 893, 893, 893, 893, 893, 893, + 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, + 86, 893, 965, 893, 11, 1355, -26, 11, 86, 88, + 1427, 1427, 893, -244, -244, -6, 893, 893, -244, 893, + 893, 51, 1307, 893, 893, -244, 893, -244, 90, 893, + 893, 893, 893, 893, 893, 893, 893, 893, 893, 91, + -22, -244, -244, 893, -244, -244, 1427, 67, -244, 893, + -244, -51, -51, -51, -51, 141, 141, -244, -38, -51, + -51, -51, -51, -38, -35, -35, -244, -244, -244, -86, + 1427, -244, -49, -244, 1427, 86, -244, -244, 1427, 1427, + 1427, -51, 893, 893, 1427, -51, 1427, -244, 1427, 1135, + 1427, 1169, 1427, 1203, 1427, 1237, 1427, 1427, -244, -244, + 893, 1427, 575, 13, -244, 1427, 575, 17, 94, 17, + -27, -51, 1427, 893, 893, 893, 893, -17, -244, -244, + 35, 92, 893, 575, 58, 97, -244, -244, -244, 17, + 1427, 1427, 1427, 1427, -244, -244, 893, 1427, 89, -244, + -244, 484, 575, -244, 1427, -244, -244, 113, 89, 893, + 122, 575, -244, 575, -244, 63, -244, 1427, -244, 48, + 575, 64, -244, -244, 102, 129, 69, -244, 575, -244, + -244, -244, 77, 575, -244, -244 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -170, -170, 86, -170, 152, 1, -170, -88, -170, -170, - -170, -170, -170, -157, -85, -40, -170, -170, 116, -4, - 51, -170, -170, -170, -170, -170, 186, -19, -170, -170, - -170, -170, -170, -170, -169, -170, -128, -170, -39, 58 + -244, -244, 34, -244, 108, 19, -244, -130, -244, -244, + -244, -244, -244, -82, -40, -3, -244, -244, 73, -4, + 20, -244, -244, -244, -244, -244, 140, -19, -244, -244, + -244, -244, -244, -244, -152, -244, -243, -244, -39, 80 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -906,300 +906,316 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -6 static const yytype_int16 yytable[] = { - 71, 51, 126, 72, 73, 74, 224, 125, 77, 74, - 79, 74, 108, 99, 100, 97, 98, 92, 235, 257, - 96, 67, 139, 168, 258, 271, 105, 92, 101, 111, - 112, 113, 114, 115, 116, 139, 169, 154, 140, 121, - 122, 123, 124, 157, 272, 197, 198, 148, 149, 128, - 172, 130, 88, 132, 90, 259, 76, 145, 146, 147, - 148, 149, 83, 173, 278, 152, 262, 84, 164, 258, - 279, 78, 124, 81, 162, 258, 155, 221, 124, 95, - 193, 139, 159, 249, 160, 102, 250, 103, 177, 104, - 133, 134, 135, 136, 137, 138, 171, 139, 165, 166, - 140, 141, 142, 127, 146, 147, 148, 149, 109, 284, - 117, 253, 193, 119, 192, 193, 120, 143, 144, 145, - 146, 147, 148, 149, 129, 196, 14, 225, 51, 201, + 71, 158, 126, 72, 73, 74, 222, 125, 77, 74, + 79, 74, 108, 100, 101, 257, 278, 67, 93, 51, + 258, 97, 139, 14, 226, 140, 105, 93, 102, 111, + 112, 113, 114, 115, 116, 139, 293, 154, 139, 121, + 122, 123, 124, 157, 145, 146, 147, 148, 149, 128, + 271, 130, 259, 132, 76, 169, 173, 258, 146, 147, + 148, 149, 84, 148, 149, 152, 85, 170, 174, 272, + 98, 99, 124, 260, 279, 163, 155, 221, 124, 258, + 193, 249, 225, 160, 250, 161, 284, 96, 177, 193, + 197, 198, 89, 78, 91, 81, 103, 172, 192, 193, + 104, 109, 117, 127, 119, 120, 129, 151, 162, 168, + 153, 175, 159, 178, 189, 190, 218, 193, 223, 232, + 237, 248, 254, 275, 277, 196, 285, 290, 296, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 151, 124, 313, 220, - 292, 293, 153, 158, 161, 167, 174, 223, 178, 189, - 256, 227, 228, 190, 229, 230, 218, 270, 233, 234, - 193, 274, 236, 222, 231, 238, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 237, 248, 275, 288, 251, - 277, 254, 285, 286, 290, 255, 289, 296, 305, 309, - 314, 316, 295, 318, 320, 321, 322, 325, 131, 303, - 307, 267, 306, 194, 273, 226, 170, 107, 0, 312, - 0, 0, 0, 315, 0, 0, 317, 260, 261, 0, - 0, 0, 0, 0, 323, 0, 291, 0, 0, 326, - 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, - 0, 0, 301, 302, 0, 304, 0, 0, 0, 280, - 281, 282, 283, 311, 0, 0, 0, 0, 287, 0, - 0, -5, 1, 319, 0, 0, 0, 0, 0, 0, - 324, 0, 294, 2, 0, 0, 3, 4, 5, 0, - 6, 7, 8, 9, 10, 308, 11, 12, 13, 0, - 14, 15, 16, 0, 17, 0, 18, 0, 0, 0, - 19, 0, 20, 21, 22, 0, 0, 23, 0, 0, - 0, 0, 24, 25, 26, 0, 0, 27, 0, 0, - 0, 28, 29, 30, 31, 0, 32, 0, 0, 0, - 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, - 34, 35, 36, 37, 38, 0, 0, 39, 40, 41, - 42, 0, 0, 0, 0, 0, 0, 43, 44, 0, - 0, 0, -5, 45, 2, 46, 0, 3, 4, 5, + 212, 213, 214, 215, 216, 217, 51, 124, 286, 220, + 289, 304, 308, 313, 315, 317, 253, 319, 224, 320, + 321, 194, 228, 229, 131, 230, 231, 324, 306, 234, + 235, 107, 236, 0, 171, 238, 239, 240, 241, 242, + 243, 244, 245, 246, 247, 227, 0, 0, 0, 251, + 0, 0, 0, 0, 0, 255, 0, 256, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 133, 134, 135, + 136, 267, 270, 0, 139, 0, 274, 140, 141, 142, + 0, 0, 312, 0, 0, 0, 0, 0, 261, 262, + 0, 0, 0, 288, 143, 144, 145, 146, 147, 148, + 149, 0, 0, 0, 0, 0, 124, 295, 0, 0, + 0, 273, 0, 0, 302, 0, 0, 305, 0, 280, + 281, 282, 283, 311, 0, 0, 0, 314, 287, 0, + 316, 0, 0, 291, 0, 292, 0, 0, 322, 0, + 0, 0, 294, 325, 0, 0, 0, 0, 0, 0, + 301, 0, 303, 0, 0, 307, 0, 0, 0, 310, + 0, 0, -5, 1, 0, 0, 0, 0, 0, 318, + 0, 0, 0, 0, 2, 0, 323, 3, 4, 5, 0, 6, 7, 8, 9, 10, 0, 11, 12, 13, - 0, 14, 15, 16, 0, 17, 0, 18, 0, 0, - 0, 19, 0, 20, 21, 22, 0, 0, 23, 0, - 0, 0, 0, 24, 25, 26, 0, 0, 27, 0, - 0, 0, 28, 29, 30, 31, 0, 32, 0, 0, + 0, 14, 15, 16, 0, 17, 0, 18, 19, 0, + 0, 0, 20, 0, 21, 22, 23, 0, 0, 24, + 0, 0, 0, 0, 25, 26, 27, 0, 0, 28, + 0, 0, 0, 29, 30, 31, 0, 32, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 34, 35, 36, 37, 38, 0, 0, 39, 40, 41, 42, 0, 0, 0, 0, 0, 0, 43, 44, - 0, 0, 0, 0, 45, 2, 46, 0, 3, 4, + 0, 0, 0, -5, 45, 2, 46, 0, 3, 4, 5, 0, 6, 7, 8, 9, 10, 0, 11, 12, - 13, 0, 14, 15, 16, 0, 17, 300, 18, 0, - 0, 0, 19, 0, 20, 21, 22, 0, 0, 0, - 0, 0, 0, 0, 24, 25, 26, 0, 0, 27, - 0, 0, 0, 0, 0, 30, 31, 0, 32, 0, + 13, 0, 14, 15, 16, 0, 17, 0, 18, 19, + 0, 0, 0, 20, 0, 21, 22, 23, 0, 0, + 24, 0, 0, 0, 0, 25, 26, 27, 0, 0, + 28, 0, 0, 0, 29, 30, 31, 0, 32, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 34, 35, 36, 37, 38, 0, 0, 39, - 40, 0, 42, 0, 0, 0, 0, 0, 0, 43, - 44, 0, 0, 0, 268, 45, 2, 46, 0, 3, + 40, 41, 42, 0, 0, 0, 0, 0, 0, 43, + 44, 0, 0, 0, 0, 45, 2, 46, 0, 3, 4, 5, 0, 6, 7, 8, 9, 10, 0, 11, - 12, 13, 0, 14, 15, 16, 0, 17, 0, 18, - 0, 0, 0, 19, 0, 20, 21, 22, 0, 0, - 0, 0, 0, 0, 0, 24, 25, 26, 0, 0, - 27, 0, 0, 0, 0, 0, 30, 31, 0, 32, + 12, 13, 0, 14, 15, 16, 0, 17, 300, 18, + 0, 0, 0, 0, 20, 0, 21, 22, 23, 0, + 0, 0, 0, 0, 0, 0, 25, 26, 27, 0, + 0, 28, 0, 0, 0, 0, 30, 31, 0, 32, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 34, 35, 36, 37, 38, 0, 0, 39, 40, 0, 42, 0, 0, 0, 0, 0, 0, 43, 44, 0, 0, 0, 268, 45, 2, 46, 0, 3, 4, 5, 0, 6, 7, 8, 9, 10, 0, 11, 12, 13, 0, 14, 15, 16, 0, 17, 0, - 18, 0, 0, 0, 19, 0, 20, 21, 0, 0, - 0, 0, 0, 0, 0, 0, 24, 0, 26, 0, - 0, 0, 0, 0, 0, 0, 0, 30, 31, 0, + 18, 0, 0, 0, 0, 20, 0, 21, 22, 23, + 0, 0, 0, 0, 0, 0, 0, 25, 26, 27, + 0, 0, 28, 0, 0, 0, 0, 30, 31, 0, 32, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 34, 35, 36, 37, 38, 0, - 0, 0, 40, 0, 42, 0, 0, 0, 0, 0, - 2, 43, 44, 3, 4, 5, 0, 45, 0, 46, - 0, 0, 0, 11, 12, 13, 0, 14, 68, 16, - 0, 17, 0, 0, 0, 0, 0, 0, 86, 0, - 0, 0, 0, 87, 0, 88, 89, 90, 91, 69, - 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 39, 40, 0, 42, 0, 0, 0, 0, 0, + 0, 43, 44, 0, 0, 0, 268, 45, 2, 46, + 0, 3, 4, 5, 0, 6, 7, 8, 9, 10, + 0, 11, 12, 13, 0, 14, 15, 16, 0, 17, + 0, 18, 0, 0, 0, 0, 20, 0, 21, 22, + 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, + 27, 0, 0, 0, 0, 0, 0, 0, 30, 31, + 0, 32, 0, 0, 0, 0, 0, 0, 33, 0, + 0, 0, 0, 0, 0, 34, 35, 36, 37, 38, + 0, 0, 0, 40, 0, 42, 0, 0, 0, 0, + 0, 2, 43, 44, 3, 4, 5, 0, 45, 0, + 46, 0, 0, 0, 11, 12, 13, 0, 14, 68, + 16, 0, 17, 0, 0, 0, 0, 0, 0, 0, + 87, 0, 0, 0, 0, 88, 0, 89, 90, 91, + 92, 69, 0, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 33, 2, 0, 0, 3, 4, 5, 34, 35, 36, - 37, 38, 0, 0, 11, 12, 13, 70, 14, 68, - 16, 0, 17, 0, 43, 44, 0, 0, 0, 86, - 45, 0, 46, 0, 0, 0, 88, 0, 90, 0, - 69, 2, 26, 0, 3, 4, 5, 0, 0, 0, - 0, 0, 0, 106, 11, 12, 13, 0, 14, 68, - 16, 33, 17, 0, 0, 0, 0, 0, 34, 35, + 0, 33, 0, 0, 0, 0, 0, 0, 34, 35, 36, 37, 38, 0, 0, 0, 0, 0, 70, 0, - 69, 0, 26, 0, 0, 43, 44, 0, 0, 0, - 0, 45, 0, 46, 0, 0, 0, 0, 0, 0, - 0, 33, 2, 0, 0, 3, 4, 5, 34, 35, - 36, 37, 38, 0, 0, 11, 12, 13, 70, 14, - 68, 16, 0, 17, 0, 43, 44, 133, 134, 135, - 136, 45, 0, 46, 139, 0, 0, 140, 141, 142, - 0, 69, 0, 26, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 143, 144, 145, 146, 147, 148, - 149, 0, 33, 0, 0, 0, 0, 0, 0, 34, - 35, 36, 37, 38, 0, 0, 0, 0, 179, 70, - 0, 0, 0, 0, 180, 0, 43, 44, 0, 0, - 0, 0, 80, 0, 46, 133, 134, 135, 136, 137, + 0, 0, 0, 0, 2, 43, 44, 3, 4, 5, + 0, 45, 0, 46, 0, 0, 0, 11, 12, 13, + 0, 14, 68, 16, 0, 17, 0, 0, 0, 0, + 0, 0, 0, 87, 0, 0, 0, 0, 0, 0, + 89, 0, 91, 0, 69, 0, 27, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, + 0, 0, 0, 0, 33, 2, 0, 0, 3, 4, + 5, 34, 35, 36, 37, 38, 0, 0, 11, 12, + 13, 70, 14, 68, 16, 0, 17, 0, 43, 44, + 0, 0, 0, 0, 45, 0, 46, 0, 2, 0, + 0, 3, 4, 5, 0, 69, 0, 27, 0, 0, + 0, 11, 12, 13, 0, 14, 68, 16, 0, 17, + 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, + 0, 0, 34, 35, 36, 37, 38, 0, 69, 0, + 27, 0, 70, 0, 0, 0, 0, 0, 0, 43, + 44, 0, 0, 0, 0, 45, 0, 46, 33, 0, + 0, 0, 0, 0, 0, 34, 35, 36, 37, 38, + 165, 0, 0, 0, 0, 70, 0, 0, 0, 0, + 0, 0, 43, 44, 0, 0, 0, 0, 80, 0, + 46, 133, 134, 135, 136, 137, 138, 0, 139, 166, + 167, 140, 141, 142, 0, 0, 0, 0, 0, 179, + 0, 0, 0, 0, 0, 180, 0, 0, 143, 144, + 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, 142, 0, 0, - 0, 0, 181, 0, 0, 0, 0, 0, 182, 0, + 0, 0, 0, 181, 0, 0, 0, 0, 0, 182, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, - 141, 142, 0, 0, 0, 0, 183, 0, 0, 0, - 0, 0, 184, 0, 0, 0, 143, 144, 145, 146, + 141, 142, 0, 0, 0, 0, 0, 183, 0, 0, + 0, 0, 0, 184, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, 142, 0, 0, 0, 0, - 185, 0, 0, 0, 0, 0, 186, 0, 0, 0, + 0, 185, 0, 0, 0, 0, 0, 186, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, 142, - 0, 0, 0, 0, 263, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 263, 0, 0, 0, 0, 0, 0, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, - 0, 140, 141, 142, 0, 0, 0, 0, 264, 0, + 0, 140, 141, 142, 0, 0, 0, 0, 0, 264, 0, 0, 0, 0, 0, 0, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, 142, 0, 0, - 0, 0, 265, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 265, 0, 0, 0, 0, 0, 0, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, - 141, 142, 0, 0, 0, 0, 266, 0, 0, 0, + 141, 142, 0, 0, 0, 0, 0, 266, 0, 0, 0, 0, 0, 0, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, 142, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 199, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 199, 0, 0, 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, 142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 232, 0, 143, 144, 145, 146, 147, 148, - 149, 0, 200, 133, 134, 135, 136, 137, 138, 0, - 139, 0, 0, 140, 141, 142, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 176, 0, - 143, 144, 145, 146, 147, 148, 149, 133, 134, 135, + 0, 0, 0, 233, 143, 144, 145, 146, 147, 148, + 149, 0, 200, 133, 134, 135, 136, 137, 138, 176, + 139, 0, 0, 140, 141, 142, 0, 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, 142, - 133, 134, 135, 136, 137, 138, 0, 139, 0, 0, - 140, 141, 142, 0, 143, 144, 145, 146, 147, 148, - 149, 0, 0, 0, 0, 0, 0, 143, 144, 145, - 146, 147, 148, 149, 0, 0, 0, 191, 133, 134, - 135, 136, 137, 138, 0, 139, 0, 0, 140, 141, - 142, 0, 0, 0, 0, 0, 187, 188, 0, 0, - 0, 0, 0, 0, 0, 143, 144, 145, 146, 147, - 148, 149, 133, 134, 135, 136, 137, 138, 0, 139, - 0, 0, 140, 141, 142, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 143, - 144, 145, 146, 147, 148, 149 + 143, 144, 145, 146, 147, 148, 149, 0, 0, 0, + 0, 0, 0, 0, 143, 144, 145, 146, 147, 148, + 149, 133, 134, 135, 136, 137, 138, 0, 139, 0, + 0, 140, 141, 142, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 143, 144, + 145, 146, 147, 148, 149, 0, 0, 0, 191, 133, + 134, 135, 136, 137, 138, 0, 139, 0, 0, 140, + 141, 142, 0, 0, 0, 0, 0, 187, 188, 0, + 0, 0, 0, 0, 0, 0, 143, 144, 145, 146, + 147, 148, 149, 133, 134, 135, 136, 137, 138, 0, + 139, 0, 0, 140, 141, 142, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 143, 144, 145, 146, 147, 148, 149 }; static const yytype_int16 yycheck[] = { - 4, 0, 0, 7, 8, 9, 163, 46, 12, 13, - 14, 15, 31, 15, 16, 57, 58, 21, 175, 101, - 24, 101, 73, 55, 106, 36, 30, 31, 30, 33, - 34, 35, 36, 37, 38, 73, 68, 76, 76, 43, - 44, 45, 46, 82, 55, 130, 131, 98, 99, 53, - 55, 55, 47, 57, 49, 224, 30, 95, 96, 97, - 98, 99, 52, 68, 101, 69, 235, 30, 44, 106, - 101, 13, 76, 15, 93, 106, 80, 103, 82, 30, - 106, 73, 86, 103, 88, 30, 106, 30, 107, 30, - 66, 67, 68, 69, 70, 71, 100, 73, 74, 75, - 76, 77, 78, 101, 96, 97, 98, 99, 30, 103, - 30, 196, 106, 30, 105, 106, 102, 93, 94, 95, - 96, 97, 98, 99, 68, 129, 29, 30, 127, 133, + 4, 83, 0, 7, 8, 9, 158, 46, 12, 13, + 14, 15, 31, 15, 16, 101, 259, 101, 22, 0, + 106, 25, 73, 29, 30, 76, 30, 31, 30, 33, + 34, 35, 36, 37, 38, 73, 279, 76, 73, 43, + 44, 45, 46, 82, 95, 96, 97, 98, 99, 53, + 37, 55, 101, 57, 30, 56, 56, 106, 96, 97, + 98, 99, 53, 98, 99, 69, 30, 68, 68, 56, + 58, 59, 76, 225, 101, 94, 80, 103, 82, 106, + 106, 103, 164, 87, 106, 89, 103, 30, 107, 106, + 130, 131, 48, 13, 50, 15, 30, 101, 105, 106, + 30, 30, 30, 101, 30, 102, 68, 102, 48, 30, + 106, 55, 106, 106, 106, 30, 30, 106, 30, 68, + 30, 30, 55, 106, 30, 129, 91, 30, 39, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 102, 151, 305, 153, - 278, 279, 106, 106, 47, 30, 54, 161, 106, 106, - 200, 165, 166, 30, 168, 169, 30, 252, 172, 173, - 106, 256, 176, 30, 68, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 30, 30, 106, 273, 193, - 30, 54, 91, 55, 30, 199, 92, 38, 37, 30, - 90, 106, 287, 91, 54, 30, 91, 90, 56, 294, - 298, 250, 297, 127, 254, 164, 100, 31, -1, 304, - -1, -1, -1, 308, -1, -1, 311, 231, 232, -1, - -1, -1, -1, -1, 319, -1, 276, -1, -1, 324, - -1, -1, -1, -1, -1, -1, 250, -1, -1, -1, - -1, -1, 292, 293, -1, 295, -1, -1, -1, 263, - 264, 265, 266, 303, -1, -1, -1, -1, 272, -1, - -1, 0, 1, 313, -1, -1, -1, -1, -1, -1, - 320, -1, 286, 12, -1, -1, 15, 16, 17, -1, - 19, 20, 21, 22, 23, 299, 25, 26, 27, -1, - 29, 30, 31, -1, 33, -1, 35, -1, -1, -1, - 39, -1, 41, 42, 43, -1, -1, 46, -1, -1, - -1, -1, 51, 52, 53, -1, -1, 56, -1, -1, - -1, 60, 61, 62, 63, -1, 65, -1, -1, -1, - -1, -1, -1, 72, -1, -1, -1, -1, -1, -1, - 79, 80, 81, 82, 83, -1, -1, 86, 87, 88, - 89, -1, -1, -1, -1, -1, -1, 96, 97, -1, - -1, -1, 101, 102, 12, 104, -1, 15, 16, 17, + 144, 145, 146, 147, 148, 149, 127, 151, 56, 153, + 92, 38, 30, 90, 106, 91, 196, 55, 162, 30, + 91, 127, 166, 167, 56, 169, 170, 90, 298, 173, + 174, 31, 176, -1, 101, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 165, -1, -1, -1, 193, + -1, -1, -1, -1, -1, 199, -1, 200, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 66, 67, 68, + 69, 250, 252, -1, 73, -1, 256, 76, 77, 78, + -1, -1, 304, -1, -1, -1, -1, -1, 232, 233, + -1, -1, -1, 273, 93, 94, 95, 96, 97, 98, + 99, -1, -1, -1, -1, -1, 250, 287, -1, -1, + -1, 254, -1, -1, 294, -1, -1, 297, -1, 263, + 264, 265, 266, 303, -1, -1, -1, 307, 272, -1, + 310, -1, -1, 276, -1, 278, -1, -1, 318, -1, + -1, -1, 286, 323, -1, -1, -1, -1, -1, -1, + 293, -1, 295, -1, -1, 299, -1, -1, -1, 302, + -1, -1, 0, 1, -1, -1, -1, -1, -1, 312, + -1, -1, -1, -1, 12, -1, 319, 15, 16, 17, -1, 19, 20, 21, 22, 23, -1, 25, 26, 27, - -1, 29, 30, 31, -1, 33, -1, 35, -1, -1, - -1, 39, -1, 41, 42, 43, -1, -1, 46, -1, - -1, -1, -1, 51, 52, 53, -1, -1, 56, -1, - -1, -1, 60, 61, 62, 63, -1, 65, -1, -1, + -1, 29, 30, 31, -1, 33, -1, 35, 36, -1, + -1, -1, 40, -1, 42, 43, 44, -1, -1, 47, + -1, -1, -1, -1, 52, 53, 54, -1, -1, 57, + -1, -1, -1, 61, 62, 63, -1, 65, -1, -1, -1, -1, -1, -1, 72, -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, -1, -1, 86, 87, 88, 89, -1, -1, -1, -1, -1, -1, 96, 97, - -1, -1, -1, -1, 102, 12, 104, -1, 15, 16, + -1, -1, -1, 101, 102, 12, 104, -1, 15, 16, 17, -1, 19, 20, 21, 22, 23, -1, 25, 26, - 27, -1, 29, 30, 31, -1, 33, 34, 35, -1, - -1, -1, 39, -1, 41, 42, 43, -1, -1, -1, - -1, -1, -1, -1, 51, 52, 53, -1, -1, 56, - -1, -1, -1, -1, -1, 62, 63, -1, 65, -1, + 27, -1, 29, 30, 31, -1, 33, -1, 35, 36, + -1, -1, -1, 40, -1, 42, 43, 44, -1, -1, + 47, -1, -1, -1, -1, 52, 53, 54, -1, -1, + 57, -1, -1, -1, 61, 62, 63, -1, 65, -1, -1, -1, -1, -1, -1, 72, -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, -1, -1, 86, - 87, -1, 89, -1, -1, -1, -1, -1, -1, 96, - 97, -1, -1, -1, 101, 102, 12, 104, -1, 15, + 87, 88, 89, -1, -1, -1, -1, -1, -1, 96, + 97, -1, -1, -1, -1, 102, 12, 104, -1, 15, 16, 17, -1, 19, 20, 21, 22, 23, -1, 25, - 26, 27, -1, 29, 30, 31, -1, 33, -1, 35, - -1, -1, -1, 39, -1, 41, 42, 43, -1, -1, - -1, -1, -1, -1, -1, 51, 52, 53, -1, -1, - 56, -1, -1, -1, -1, -1, 62, 63, -1, 65, + 26, 27, -1, 29, 30, 31, -1, 33, 34, 35, + -1, -1, -1, -1, 40, -1, 42, 43, 44, -1, + -1, -1, -1, -1, -1, -1, 52, 53, 54, -1, + -1, 57, -1, -1, -1, -1, 62, 63, -1, 65, -1, -1, -1, -1, -1, -1, 72, -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, -1, -1, 86, 87, -1, 89, -1, -1, -1, -1, -1, -1, 96, 97, -1, -1, -1, 101, 102, 12, 104, -1, 15, 16, 17, -1, 19, 20, 21, 22, 23, -1, 25, 26, 27, -1, 29, 30, 31, -1, 33, -1, - 35, -1, -1, -1, 39, -1, 41, 42, -1, -1, - -1, -1, -1, -1, -1, -1, 51, -1, 53, -1, - -1, -1, -1, -1, -1, -1, -1, 62, 63, -1, + 35, -1, -1, -1, -1, 40, -1, 42, 43, 44, + -1, -1, -1, -1, -1, -1, -1, 52, 53, 54, + -1, -1, 57, -1, -1, -1, -1, 62, 63, -1, 65, -1, -1, -1, -1, -1, -1, 72, -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, -1, - -1, -1, 87, -1, 89, -1, -1, -1, -1, -1, - 12, 96, 97, 15, 16, 17, -1, 102, -1, 104, - -1, -1, -1, 25, 26, 27, -1, 29, 30, 31, - -1, 33, -1, -1, -1, -1, -1, -1, 40, -1, - -1, -1, -1, 45, -1, 47, 48, 49, 50, 51, - -1, 53, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 86, 87, -1, 89, -1, -1, -1, -1, -1, + -1, 96, 97, -1, -1, -1, 101, 102, 12, 104, + -1, 15, 16, 17, -1, 19, 20, 21, 22, 23, + -1, 25, 26, 27, -1, 29, 30, 31, -1, 33, + -1, 35, -1, -1, -1, -1, 40, -1, 42, 43, + -1, -1, -1, -1, -1, -1, -1, -1, 52, -1, + 54, -1, -1, -1, -1, -1, -1, -1, 62, 63, + -1, 65, -1, -1, -1, -1, -1, -1, 72, -1, + -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, + -1, -1, -1, 87, -1, 89, -1, -1, -1, -1, + -1, 12, 96, 97, 15, 16, 17, -1, 102, -1, + 104, -1, -1, -1, 25, 26, 27, -1, 29, 30, + 31, -1, 33, -1, -1, -1, -1, -1, -1, -1, + 41, -1, -1, -1, -1, 46, -1, 48, 49, 50, + 51, 52, -1, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 72, 12, -1, -1, 15, 16, 17, 79, 80, 81, - 82, 83, -1, -1, 25, 26, 27, 89, 29, 30, - 31, -1, 33, -1, 96, 97, -1, -1, -1, 40, - 102, -1, 104, -1, -1, -1, 47, -1, 49, -1, - 51, 12, 53, -1, 15, 16, 17, -1, -1, -1, - -1, -1, -1, 64, 25, 26, 27, -1, 29, 30, - 31, 72, 33, -1, -1, -1, -1, -1, 79, 80, + -1, 72, -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, -1, -1, -1, -1, -1, 89, -1, - 51, -1, 53, -1, -1, 96, 97, -1, -1, -1, - -1, 102, -1, 104, -1, -1, -1, -1, -1, -1, - -1, 72, 12, -1, -1, 15, 16, 17, 79, 80, - 81, 82, 83, -1, -1, 25, 26, 27, 89, 29, - 30, 31, -1, 33, -1, 96, 97, 66, 67, 68, - 69, 102, -1, 104, 73, -1, -1, 76, 77, 78, - -1, 51, -1, 53, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 93, 94, 95, 96, 97, 98, - 99, -1, 72, -1, -1, -1, -1, -1, -1, 79, - 80, 81, 82, 83, -1, -1, -1, -1, 49, 89, - -1, -1, -1, -1, 55, -1, 96, 97, -1, -1, - -1, -1, 102, -1, 104, 66, 67, 68, 69, 70, + -1, -1, -1, -1, 12, 96, 97, 15, 16, 17, + -1, 102, -1, 104, -1, -1, -1, 25, 26, 27, + -1, 29, 30, 31, -1, 33, -1, -1, -1, -1, + -1, -1, -1, 41, -1, -1, -1, -1, -1, -1, + 48, -1, 50, -1, 52, -1, 54, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 64, -1, -1, -1, + -1, -1, -1, -1, 72, 12, -1, -1, 15, 16, + 17, 79, 80, 81, 82, 83, -1, -1, 25, 26, + 27, 89, 29, 30, 31, -1, 33, -1, 96, 97, + -1, -1, -1, -1, 102, -1, 104, -1, 12, -1, + -1, 15, 16, 17, -1, 52, -1, 54, -1, -1, + -1, 25, 26, 27, -1, 29, 30, 31, -1, 33, + -1, -1, -1, -1, -1, 72, -1, -1, -1, -1, + -1, -1, 79, 80, 81, 82, 83, -1, 52, -1, + 54, -1, 89, -1, -1, -1, -1, -1, -1, 96, + 97, -1, -1, -1, -1, 102, -1, 104, 72, -1, + -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, + 45, -1, -1, -1, -1, 89, -1, -1, -1, -1, + -1, -1, 96, 97, -1, -1, -1, -1, 102, -1, + 104, 66, 67, 68, 69, 70, 71, -1, 73, 74, + 75, 76, 77, 78, -1, -1, -1, -1, -1, 50, + -1, -1, -1, -1, -1, 56, -1, -1, 93, 94, + 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, 78, -1, -1, - -1, -1, 49, -1, -1, -1, -1, -1, 55, -1, + -1, -1, -1, 50, -1, -1, -1, -1, -1, 56, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, - 77, 78, -1, -1, -1, -1, 49, -1, -1, -1, - -1, -1, 55, -1, -1, -1, 93, 94, 95, 96, + 77, 78, -1, -1, -1, -1, -1, 50, -1, -1, + -1, -1, -1, 56, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, 78, -1, -1, -1, -1, - 49, -1, -1, -1, -1, -1, 55, -1, -1, -1, + -1, 50, -1, -1, -1, -1, -1, 56, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, 78, - -1, -1, -1, -1, 49, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 50, -1, -1, -1, -1, -1, -1, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, - -1, 76, 77, 78, -1, -1, -1, -1, 49, -1, + -1, 76, 77, 78, -1, -1, -1, -1, -1, 50, -1, -1, -1, -1, -1, -1, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, 78, -1, -1, - -1, -1, 49, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 50, -1, -1, -1, -1, -1, -1, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, - 77, 78, -1, -1, -1, -1, 49, -1, -1, -1, + 77, 78, -1, -1, -1, -1, -1, 50, -1, -1, -1, -1, -1, -1, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, 78, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 55, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 56, -1, -1, 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, 78, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 55, -1, 93, 94, 95, 96, 97, 98, - 99, -1, 101, 66, 67, 68, 69, 70, 71, -1, - 73, -1, -1, 76, 77, 78, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 57, -1, - 93, 94, 95, 96, 97, 98, 99, 66, 67, 68, + -1, -1, -1, 56, 93, 94, 95, 96, 97, 98, + 99, -1, 101, 66, 67, 68, 69, 70, 71, 58, + 73, -1, -1, 76, 77, 78, -1, 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, 78, - 66, 67, 68, 69, 70, 71, -1, 73, -1, -1, - 76, 77, 78, -1, 93, 94, 95, 96, 97, 98, - 99, -1, -1, -1, -1, -1, -1, 93, 94, 95, - 96, 97, 98, 99, -1, -1, -1, 103, 66, 67, - 68, 69, 70, 71, -1, 73, -1, -1, 76, 77, - 78, -1, -1, -1, -1, -1, 84, 85, -1, -1, - -1, -1, -1, -1, -1, 93, 94, 95, 96, 97, - 98, 99, 66, 67, 68, 69, 70, 71, -1, 73, - -1, -1, 76, 77, 78, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 93, - 94, 95, 96, 97, 98, 99 + 93, 94, 95, 96, 97, 98, 99, -1, -1, -1, + -1, -1, -1, -1, 93, 94, 95, 96, 97, 98, + 99, 66, 67, 68, 69, 70, 71, -1, 73, -1, + -1, 76, 77, 78, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 93, 94, + 95, 96, 97, 98, 99, -1, -1, -1, 103, 66, + 67, 68, 69, 70, 71, -1, 73, -1, -1, 76, + 77, 78, -1, -1, -1, -1, -1, 84, 85, -1, + -1, -1, -1, -1, -1, -1, 93, 94, 95, 96, + 97, 98, 99, 66, 67, 68, 69, 70, 71, -1, + 73, -1, -1, 76, 77, 78, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 93, 94, 95, 96, 97, 98, 99 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -1207,38 +1223,38 @@ static const yytype_int16 yycheck[] = static const yytype_uint8 yystos[] = { 0, 1, 12, 15, 16, 17, 19, 20, 21, 22, - 23, 25, 26, 27, 29, 30, 31, 33, 35, 39, - 41, 42, 43, 46, 51, 52, 53, 56, 60, 61, + 23, 25, 26, 27, 29, 30, 31, 33, 35, 36, + 40, 42, 43, 44, 47, 52, 53, 54, 57, 61, 62, 63, 65, 72, 79, 80, 81, 82, 83, 86, 87, 88, 89, 96, 97, 102, 104, 108, 109, 110, 111, 112, 113, 116, 117, 118, 123, 124, 125, 126, - 127, 128, 132, 135, 137, 140, 144, 101, 30, 51, + 127, 128, 132, 135, 137, 140, 144, 101, 30, 52, 89, 126, 126, 126, 126, 146, 30, 126, 146, 126, - 102, 146, 136, 52, 30, 129, 40, 45, 47, 48, - 49, 50, 126, 133, 134, 30, 126, 57, 58, 15, - 16, 30, 30, 30, 30, 126, 64, 133, 134, 30, + 102, 146, 136, 139, 53, 30, 129, 41, 46, 48, + 49, 50, 51, 126, 133, 134, 30, 126, 58, 59, + 15, 16, 30, 30, 30, 126, 64, 133, 134, 30, 131, 126, 126, 126, 126, 126, 126, 30, 130, 30, 102, 126, 126, 126, 126, 145, 0, 101, 126, 68, 126, 111, 126, 66, 67, 68, 69, 70, 71, 73, 76, 77, 78, 93, 94, 95, 96, 97, 98, 99, - 120, 102, 126, 106, 145, 126, 145, 145, 106, 126, - 126, 47, 134, 138, 44, 74, 75, 30, 55, 68, - 125, 126, 55, 68, 54, 139, 57, 134, 106, 49, - 55, 49, 55, 49, 55, 49, 55, 84, 85, 106, - 30, 103, 105, 106, 109, 121, 126, 121, 121, 55, + 120, 102, 126, 106, 145, 126, 145, 145, 120, 106, + 126, 126, 48, 134, 138, 45, 74, 75, 30, 56, + 68, 125, 126, 56, 68, 55, 58, 134, 106, 50, + 56, 50, 56, 50, 56, 50, 56, 84, 85, 106, + 30, 103, 105, 106, 109, 121, 126, 121, 121, 56, 101, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 30, 141, - 126, 103, 30, 126, 120, 30, 127, 126, 126, 126, - 126, 68, 55, 126, 126, 120, 126, 30, 126, 126, + 126, 103, 141, 30, 126, 120, 30, 127, 126, 126, + 126, 126, 68, 56, 126, 126, 126, 30, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 30, 103, - 106, 126, 122, 121, 54, 126, 122, 101, 106, 141, - 126, 126, 141, 49, 49, 49, 49, 145, 101, 112, - 121, 36, 55, 122, 121, 106, 143, 30, 101, 101, - 126, 126, 126, 126, 103, 91, 55, 126, 121, 92, - 30, 122, 143, 143, 126, 121, 38, 114, 115, 119, - 34, 122, 122, 121, 122, 37, 121, 114, 126, 30, - 142, 122, 121, 120, 90, 121, 106, 121, 91, 122, - 54, 30, 91, 121, 122, 90, 121 + 106, 126, 122, 121, 55, 126, 122, 101, 106, 101, + 141, 126, 126, 50, 50, 50, 50, 145, 101, 112, + 121, 37, 56, 122, 121, 106, 143, 30, 143, 101, + 126, 126, 126, 126, 103, 91, 56, 126, 121, 92, + 30, 122, 122, 143, 126, 121, 39, 114, 115, 119, + 34, 122, 121, 122, 38, 121, 114, 126, 30, 142, + 122, 121, 120, 90, 121, 106, 121, 91, 122, 55, + 30, 91, 121, 122, 90, 121 }; #define yyerrok (yyerrstatus = 0) @@ -2784,7 +2800,7 @@ yyreduce: #line 533 "engines/director/lingo/lingo-gr.y" { g_lingo->code1(g_lingo->c_procret); - g_lingo->define(*(yyvsp[(2) - (8)].s), (yyvsp[(4) - (8)].code), (yyvsp[(5) - (8)].narg) + 1, &g_lingo->_currentFactory); + g_lingo->define(*(yyvsp[(1) - (7)].s), (yyvsp[(3) - (7)].code), (yyvsp[(4) - (7)].narg) + 1, &g_lingo->_currentFactory); g_lingo->_indef = false; ;} break; @@ -2875,7 +2891,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 2879 "engines/director/lingo/lingo-gr.cpp" +#line 2895 "engines/director/lingo/lingo-gr.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); |